Apa cara tercepat (akurat) untuk mencari string teks dalam file di mesin windows?

Jawaban:

11

Notepad ++ memiliki opsi 'temukan dalam file', yang terletak di menu 'Cari' .. Ini akan memungkinkan Anda untuk mencari beberapa file dalam folder (Anda dapat menentukan folder) dan akan menunjukkan kepada Anda nomor baris setiap file juga. . Anda dapat beralih apakah subfolder dan folder tersembunyi termasuk dalam pencarian, dan itu juga akan memungkinkan Anda untuk mencari dengan \ t \ n dll. Dan untuk mencari dengan ekspresi reguler jika Anda perlu.

Notepad ++ adalah editor programer Windows (bukan IDE) dan juga Open Source.

(Saya menyadari bahwa Anda kemungkinan besar pernah mendengar notepad ++, tapi saya hanya menyebutkannya di sini sebagai opsi jika Anda tidak mengetahui fitur khusus ini, dan bagi orang lain yang tersandung di utas ini nanti.

Bersulang :)

Steve Rathbone
sumber
Ya, harus saya akui, saya sudah menggunakan Notepad ++ untuk ini sebelumnya.
Jon Cage
1
@JonCage ada seseorang di utas ini sevenforums.com/software/... yang juga berbicara seperti Anda mengatakan "Saya akui" dalam hal hal-hal yang berguna. Itu cara berbicara yang sangat aneh. Anda mungkin ingin bertemu orang itu. Mungkin saudara kembarmu.
barlop
Notepad ++ bagus. Editor programmer lain seperti SciTE memiliki fungsi yang sama juga.
TimothyAWiseman
5

Agen Ransack bekerja seperti pesona. Unduh di sini .

pengguna601692
sumber
Agen Ransack adalah nama lama, sekarang disebut File Locator Lite
sepatu bot karet
5

Findstrselalu bekerja untukku. Itu dapat menggunakan teks * wildcard atau regex untuk string pencarian. Findstr /?untuk lebih

uSlackr
sumber
5

Pada sistem Unix orang kemungkinan besar akan menggunakan grep untuk melakukan ini, jadi mengapa tidak menggunakan Windows Grep?

http://www.wingrep.com/

Moox
sumber
Windows Grep kadang-kadang bisa menjadi tidak stabil, tetapi itu adalah program pencarian tercepat yang pernah saya gunakan.
yakatz
@yakatz Terima kasih telah menyebutkan kemungkinan ketidakstabilan dengan Windows Grep, saya akan mencari alat grep / ganti yang berbeda!
pacoverflow
wingrep dihentikan, namun grepwin masih tersedia dan bekerja dengan sangat baik.
techturtle
3

Inilah solusi Powershell:

gci -r $SomePath -filter "*.cpp","*.h" | Select-String $FindThisString

The -rdalam gciadalah untuk recurse, dan tentu saja adalah opsional, seperti dua filter ekstensi file. Parameter yang berguna Select-Stringadalah -listyang hanya akan melaporkan pertandingan pertama dalam suatu file, alih-alih memberi Anda setiap kemunculannya per file.

Mungkin Anda ingin langsung membuka setiap file di mana kecocokan ditemukan? Yah, perubahan kecil berikut ini cukup berguna, tergantung pada apa yang Anda miliki sebagai asosiasi file default Anda:

gci -r $SomePath -filter "*.cpp","*.h" | Select-String $FindThisString -list | ii

EjaanD
sumber
Saya akan memposting hal yang sama :)
Caleb Jares
Apakah Anda yakin -filter "*.cpp","*.h"menerima beberapa ekstensi? Ini lebih baik dibaca-include ("*.cpp","*.hpp")
mloskot
2

saat melakukan pelokalan beberapa SW saya menggunakan DocFetcher untuk mencari string yang sama dalam file yang diterjemahkan sebelumnya. Ini gratis dan open-source, tetapi harus membuat indeks terlebih dahulu. Cobalah. :-)

Juhele
sumber
1

Gunakan "string" yang disediakan oleh M $ . Mereka membeli beberapa utilitas yang sangat baik dari Sysinternals beberapa tahun yang lalu. Tidak memerlukan instalasi, cukup taruh di kotak dan jalankan untuk sintaks. Mudah digunakan dan HEBAT!

sAlder
sumber
1

grepImplementasi lain untuk Windows oleh pengembang tortoise svn yang terkenal:

GrepWin

9dan
sumber
0

Jika Anda senang di baris perintah / dengan Linux. Mungkin saya sarankan melihat menginstal versi grep for windows?

cygwin adalah cara yang cukup praktis untuk mendapatkan hal itu dan akan memberi Anda lingkungan Linux penuh, dengan bash shell dan terminal rxvt. Kalau tidak, jika Anda hanya ingin alat ada gnuwin32 tetapi kemudian Anda akan terjebak dengan prompt Windows cmd.exe.

Microsoft sebenarnya memiliki versi mereka sendiri alat Unix sebagai unduhan, tetapi mereka tampak cukup lambat dibandingkan dengan port gnu ketika saya mencobanya. Mereka juga akan memo mereka dengan Windows 8.

David C. Bishop
sumber
0

Ini adalah bagaimana saya mencari string teks di Windows Registry atau file di mesin Windows XP saya. Mari kita asumsikan saya ingin mencari string "Enterprise" dalam file teks biasa pada drive c:, lalu tulis output ke file yang bernama search_result.txt di c: \ windows \ temp

Buka prompt perintah lalu ketik:

findstr "Enterprise" c: *. txt> c: \ windows \ temp \ search_result.txt

String yang Anda cari peka terhadap huruf besar-kecil. "Enterprise" dan "enterprise" tidak akan menemukan string yang sama.

Paul
sumber