Rumah >Operasi dan penyelenggaraan >operasi dan penyelenggaraan linux >Bolehkah saya mencari kandungan fail dalam linux?

Bolehkah saya mencari kandungan fail dalam linux?

青灯夜游
青灯夜游asal
2022-03-21 15:51:512997semak imbas

Di Linux, anda boleh menggunakan perintah grep untuk mencari kandungan fail Perintah ini ialah alat carian teks yang kuat yang digunakan untuk mencari rentetan yang layak dalam fail [pilihan] nama fail corak".

Bolehkah saya mencari kandungan fail dalam linux?

Persekitaran pengendalian tutorial ini: sistem linux5.9.8, komputer Dell G3.

Di Linux, anda boleh menggunakan arahan grep untuk mencari kandungan fail.

Arahan grep (Global Regular Expression Print) dalam sistem Linux ialah alat carian teks yang berkuasa, digunakan untuk mencari rentetan yang layak dalam fail Ia boleh menggunakan ungkapan biasa untuk mencari teks dan Mencetak baris yang sepadan.

Asal usul perintah grep boleh dikesan kembali ke zaman awal UNIX Dalam sistem UNIX, corak carian dipanggil ungkapan biasa Untuk mencari fail secara menyeluruh, sesetengah pengguna Tambah awalan global (. komprehensif) sebelum rentetan yang hendak dicari Setelah kandungan yang sepadan ditemui, pengguna akan mencetaknya ke skrin.

Arahan grep boleh mencari corak aksara tertentu (iaitu ungkapan biasa) dalam satu atau lebih fail Corak ini boleh menjadi satu aksara, rentetan, perkataan atau ayat.

Ungkapan biasa ialah corak yang menerangkan set rentetan Pembentukan ungkapan biasa meniru ungkapan matematik dengan menggunakan operator untuk menggabungkan ungkapan yang lebih kecil ke dalam ungkapan baharu. Ungkapan biasa boleh berupa teks biasa atau aksara khas yang digunakan untuk menjana corak. Untuk mentakrifkan lagi corak carian, arahan grep menyokong aksara meta (juga dikenali sebagai kad bebas) untuk ungkapan biasa seperti yang ditunjukkan dalam Jadual 1.

表 1 正则表达式的通配符
通配符 功能
c* 将匹配 0 个(即空白)或多个字符 c(c 为任一字符)。
. 将匹配任何一个字符,且只能是一个字符。
[xyz] 匹配方括号中的任意一个字符。
[^xyz] 匹配除方括号中字符外的所有字符。
^ 锁定行的开头。
$ 锁定行的结尾。

Perlu diambil perhatian bahawa dalam ungkapan biasa asas, seperti aksara kad bebas *, , {, |, ( dan), dsb., ia telah kehilangan makna asalnya Untuk memulihkan makna asalnya , tambahkan garis miring ke belakang sebelum itu, seperti *, , {, |, ( dan).

Arahan grep digunakan untuk mencari corak tertentu dalam setiap fail atau medium (atau pada output tertentu apabila grep digunakan, setiap baris yang mengandungi corak aksara yang ditentukan akan dicetak (dipaparkan) ke skrin dihidupkan, tetapi menggunakan arahan grep tidak mengubah kandungan fail.

Format asas perintah grep adalah seperti berikut:

[root@localhost ~]# grep [选项] 模式 文件名

Corak di sini sama ada aksara (rentetan) atau ungkapan biasa. Pilihan yang biasa digunakan bagi arahan ini dan makna masing-masing ditunjukkan dalam Jadual 2.

表 2 grep 命令常用选项及含义
选项 含义
-c 仅列出文件中包含模式的行数。
-i 忽略模式中的字母大小写。
-l 列出带有匹配行的文件名。
-n 在每一行的最前面列出行号。
-v 列出没有匹配模式的行。
-w 把表达式当做一个完整的单字符来搜寻,忽略那些部分匹配的行。

Perhatikan bahawa jika anda sedang mencari berbilang fail, hasil carian arahan grep hanya akan memaparkan nama fail yang sepadan dengan corak yang terdapat dalam fail dan jika anda mencari satu fail, hasilnya daripada arahan grep akan memaparkan setiap fail yang mengandungi baris Corak yang sepadan.

[Contoh 1] Katakan terdapat senarai pekerja dalam emp.data Sekarang anda ingin mencari fail ini untuk mencari semua pekerja dengan jawatan KERANI Kemudian laksanakan arahan seperti berikut:

[root@localhost ~]# grep CLERK emp.data
#忽略输出内容

Dan dalam Atas dasar ini, jika anda hanya ingin mengetahui bilangan pekerja dengan jawatan KERANI, anda boleh menggunakan pilihan "-c" dan laksanakan arahan seperti berikut:

[root@localhost ~]# grep -c CLERK emp.data
#忽略输出内容

[Contoh 2] Cari fail emp.data dan gunakan ungkapan biasa Gunakan formula untuk mencari baris data bermula dengan 78. Perintah pelaksanaan adalah seperti berikut:

[root@localhost ~]# grep ^78 emp.data
#忽略输出内容

Arahan grep sangat berkuasa menggunakan pilihan yang berbeza dan ungkapan biasa yang sentiasa berubah, anda boleh mendapatkan apa sahaja maklumat yang diperlukan.

Cadangan berkaitan: "Tutorial Video Linux"

Atas ialah kandungan terperinci Bolehkah saya mencari kandungan fail dalam linux?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Apakah maksud npm dalam linux?Artikel seterusnya:Apakah maksud npm dalam linux?