Latest web development tutorials

Perintah grep Linux

Linux perintah Daquan Linux perintah Daquan

Linux perintah grep digunakan untuk mencari file yang cocok dengan kriteria tali.

Perintah grep digunakan untuk mencari konten yang berisi file template gaya yang ditentukan, jika Anda menemukan konten dari file sesuai dengan gaya template yang ditentukan, default grep perintah yang akan berisi kolom template gaya ditampilkan. Jika tidak menentukan apapun nama file, nama berkas, atau diberikan "-" perintah grep akan membaca data dari perangkat input standar.

tatabahasa

grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>][-d<进行动作>][-e<范本样式>][-f<范本文件>][--help][范本样式][文件或目录...]

parameter:

  • -a tidak --text mengabaikan atau data biner.
  • -A <Tampilan Kolom> atau --after-konteks = <Tampilan Kolom> Selain menampilkan baris dalam antrean di luar template gaya, dan menampilkan isi kolom kemudian.
  • -b atau --byte-offset sebelum menampilkan baris sesuai dengan gaya template yang, dan mengidentifikasi nomor baris dari posisi karakter pertama.
  • -B <Tampilan Kolom> atau --before-konteks = <Tampilan Kolom> Selain menampilkan baris dalam antrean di luar template gaya, dan menampilkan isi dari kolom sebelumnya.
  • -c atau --count dihitung sesuai dengan jumlah gaya kolom Template.
  • -C <Tampilan Kolom> atau --context = <Kolom Tampilan> atau - <Tampilan Kolom> Selain menampilkan baris dalam antrean di luar template gaya, dan menampilkan isi dari kolom sebelum setelah.
  • -d <beroperasi> atau --directories = <beroperasi> Bila Anda ingin menemukan berkas yang dicari adalah sebuah direktori sebaliknya, Anda harus menggunakan parameter ini, jika perintah grep akan kembali informasi dan menghentikan aksi.
  • -e <style template> atau --regexp = <style template> Cari isi file seperti yang ditentukan gaya template string.
  • -E Atau --extended-regexp gaya template untuk memperluas notasi umum digunakan.
  • -f <file template> atau --file = <file template> Menentukan file template, isi yang mengandung satu atau lebih gaya Template, sehingga grep untuk menemukan file template konten yang memenuhi kondisi format untuk setiap kolom template gaya.
  • -F Atau --fixed-regexp akan diperlakukan sebagai daftar template gaya string tetap.
  • -G Atau --basic-regexp akan diperlakukan sebagai notasi template gaya biasa untuk menggunakan.
  • h atau --no-nama file sebelum menampilkan baris sesuai dengan gaya template yang, tidak menunjukkan nama file dari kolom milik.
  • -H Atau --with-nama file sebelum menampilkan baris sesuai dengan gaya template yang, nama file menunjukkan bahwa kolom milik.
  • Perbedaan -i atau --ignore-kasus abaikan karakter.
  • l atau --file-dengan-pertandingan daftar isi dari dokumen yang cocok dengan nama file template gaya yang ditentukan.
  • -L Atau isi daftar file --files-tanpa-pertandingan tidak cocok nama file template gaya yang ditentukan.
  • -n atau --line-nomor sebelum menampilkan baris sesuai dengan template gaya, menandai jumlah jumlah kolom dari kolom.
  • q atau --quiet atau tidak --silent menampilkan informasi apapun.
  • Efek dan menentukan r atau rekursif parameter ini adalah sama dengan "-d recurse" parameter.
  • -s atau --no-pesan tidak menampilkan pesan kesalahan.
  • v atau --revert-pertandingan reverse lookup.
  • -V Atau --version informasi versi layar.
  • -w atau menampilkan --word-regexp hanya kolom pencocokan seluruh kata.
  • -x atau display --line-regexp hanya baris yang cocok dengan seluruh kolom.
  • Efek -y parameter ini dan menentukan "-i" parameter yang sama.
  • help bantuan online.

Linux perintah Daquan Linux perintah Daquan

contoh

1, di direktori saat ini, menemukan akhiran memiliki "test" file word berisi file "test" string, dan mencetak garis string. Dalam hal ini, Anda dapat menggunakan perintah berikut:

grep test *file 

Hasilnya adalah sebagai berikut:

$ grep test test* #查找后缀有“test”的文件包含“test”字符串的文件  
testfile1:This a Linux testfile! #列出testfile1 文件中包含test字符的行  
testfile_2:This is a linux testfile! #列出testfile_2 文件中包含test字符的行  
testfile_2:Linux test #列出testfile_2 文件中包含test字符的行 

2, rekursif menemukan file yang memenuhi syarat. Misalnya, untuk menemukan ditentukan direktori / etc / acpi dan subdirektorinya (jika ada subdirektori, maka) semua file yang berisi string "update" file, dan mencetak isi dari string garis, perintah yang digunakan adalah:

grep -r update /etc/acpi 

output adalah sebagai berikut:

$ grep-r update /etc/acpi #以递归的方式查找“etc/acpi”  
#下包含“update”的文件  
/etc/acpi/ac.d/85-anacron.sh:# (Things like the slocate updatedb cause a lot of IO.)  
Rather than  
/etc/acpi/resume.d/85-anacron.sh:# (Things like the slocate updatedb cause a lot of  
IO.) Rather than  
/etc/acpi/events/thinkpad-cmos:action=/usr/sbin/thinkpad-keys--update 

3, reverse lookup. Masing-masing dari contoh sebelumnya adalah untuk menemukan dan mencetak baris kualifikasi oleh "v" parameter dapat mencetak isi tidak memenuhi kondisi baris.

Cari baris yang berisi nama file tidak termasuk dalam uji tes, kali ini, perintahnya adalah:

grep -v test*

Hasilnya adalah sebagai berikut:

$ grep-v test* #查找文件名中包含test 的文件中不包含test 的行  
testfile1:helLinux!  
testfile1:Linis a free Unix-type operating system.  
testfile1:Lin  
testfile_1:HELLO LINUX!  
testfile_1:LINUX IS A FREE UNIX-TYPE OPTERATING SYSTEM.  
testfile_1:THIS IS A LINUX TESTFILE!  
testfile_2:HELLO LINUX!  
testfile_2:Linux is a free unix-type opterating system.