findstr
Mencari pola teks dalam file.
Sintaks
findstr [/b] [/e] [/l | /r] [/s] [/i] [/x] [/v] [/n] [/m] [/o] [/p] [/f:<file>] [/c:<string>] [/g:<file>] [/d:<dirlist>] [/a:<colorattribute>] [/off[line]] <strings> [<drive>:][<path>]<filename>[ ...]
Parameter
| Parameter | Deskripsi |
|---|---|
| /b | Cocok dengan pola teks jika berada di awal baris. |
| /e | Cocok dengan pola teks jika berada di akhir baris. |
| /l | Memproses string pencarian secara harfiah. |
| /r | Memproses string pencarian sebagai ekspresi reguler. Ini adalah pengaturan default. |
| /s | Mencari direktori saat ini dan semua subdirektori. |
| /i | Mengabaikan kasus karakter saat mencari string. |
| /x | Mencetak garis yang sama persis. |
| /v | Mencetak hanya baris yang tidak berisi kecocokan. |
| /n | Mencetak nomor baris dari setiap baris yang cocok. |
| /m | Mencetak hanya nama file jika file berisi kecocokan. |
| /o | Mencetak offset karakter sebelum setiap baris yang cocok. |
| /p | Melompati file dengan karakter yang tidak dapat dicetak. |
| /off[line] | Tidak melewatkan file yang memiliki set atribut offline. |
/f:<file> |
Mendapatkan daftar file dari file yang ditentukan. |
/c:<string> |
Menggunakan teks yang ditentukan sebagai string pencarian harfiah. |
/g:<file> |
Mendapatkan string pencarian dari file yang ditentukan. |
/d:<dirlist> |
Mencari daftar direktori yang ditentukan. Setiap direktori harus dipisahkan dengan titik koma (;), misalnya dir1;dir2;dir3. |
/a:<colorattribute> |
Menentukan atribut warna dengan dua digit heksadesimal. Ketik color /? untuk informasi tambahan. |
<strings> |
Menentukan teks yang akan dicari dalam nama file. Wajib diisi. |
[\<drive>:][<path>]<filename>[...] |
Menentukan lokasi dan file atau file yang akan dicari. Setidaknya diperlukan satu nama file. |
| /? | Menampilkan Bantuan pada prompt perintah. |
Keterangan
Semua opsi baris perintah findstr harus mendahului string dan nama file dalam string perintah.
Ekspresi reguler menggunakan karakter harfiah dan meta-karakter untuk menemukan pola teks, bukan string karakter yang tepat.
Karakter harfiah adalah karakter yang tidak memiliki arti khusus dalam sintaks ekspresi reguler; sebaliknya, cocok dengan kemunculan karakter tersebut. Misalnya, huruf dan angka adalah karakter harfiah.
Meta-character adalah simbol dengan arti khusus (operator atau pemisah) dalam sintaks ekspresi reguler.
Karakter meta yang diterima adalah:
Karakter meta Nilai .Kartubebas - Karakter apa pun *Ulangi - Nol atau beberapa kemunculan karakter atau kelas sebelumnya. ^Posisi garis awal - Awal garis. $Posisi garis akhir - Akhir baris. [class]Kelas karakter - Setiap satu karakter dalam satu set. [^class]Kelas terbalik - Setiap satu karakter tidak dalam satu set. [x-y]Rentang - Karakter apa pun dalam rentang yang ditentukan. \xEscape - Penggunaan harfiah dari meta-character. \<stringMemulai posisi kata - Awal kata. string\>Mengakhiri posisi kata - Akhir kata. Karakter khusus dalam sintaks ekspresi reguler memiliki kekuatan paling besar saat Anda menggunakannya bersama-sama. Misalnya, gunakan kombinasi karakter kartubebas (
.) dan ulangi*() karakter untuk mencocokkan string karakter apa pun:.*Gunakan ekspresi berikut sebagai bagian dari ekspresi yang lebih besar untuk mencocokkan string apa pun yang dimulai dengan b dan berakhir dengan ing:
b.*ing
Untuk mencari beberapa string dalam sekumpulan file, Anda harus membuat file teks yang berisi setiap kriteria pencarian pada baris terpisah.
Gunakan spasi untuk memisahkan beberapa string pencarian kecuali argumen diawali dengan /c.
Contoh
Untuk mencari halo atau di sana dalam file x.y, ketik:
findstr hello there x.y
Untuk mencari halo di sana dalam file x.y, ketik:
findstr /c:"hello there" x.y
Untuk menemukan semua kemunculan kata Windows (dengan huruf kapital awal W) dalam file proposal.txt, ketik:
findstr Windows proposal.txt
Untuk mencari setiap file di direktori saat ini dan semua subdirektori yang berisi kata Windows, terlepas dari huruf besar/kecil, ketik:
findstr /s /i Windows *.*
Untuk menemukan semua kemunculan baris yang dimulai dengan FOR dan didahului oleh nol atau lebih spasi (seperti dalam perulangan program komputer), dan untuk menampilkan nomor baris tempat setiap kemunculan ditemukan, ketik:
findstr /b /n /r /c:^ *FOR *.bas
Untuk mencantumkan file persis yang ingin Anda cari dalam file teks, gunakan kriteria pencarian dalam file stringlist.txt, untuk mencari file yang tercantum di filelist.txt, lalu menyimpan hasilnya di hasil file.out, ketik:
findstr /g:stringlist.txt /f:filelist.txt > results.out
Untuk mencantumkan setiap file yang berisi komputer kata dalam direktori saat ini dan semua subdirektori, terlepas dari kasusnya, ketik:
findstr /s /i /m \<computer\> *.*
Untuk mencantumkan setiap file yang berisi kata komputer dan kata lain yang dimulai dengan comp, (seperti pujian dan kompetensi), ketik:
findstr /s /i /m \<comp.* *.*