GNU/Linux >> Belajar Linux >  >> Linux

grep:perintah tidak ditemukan

Perintah grep, dalam bentuknya yang paling dasar, adalah alat pencarian. Tidak seperti find atau locate, ini tidak terbatas pada menemukan nama file; itu paling sering digunakan untuk mencari isi file untuk string teks tertentu. Sebagai output, grep menampilkan setiap baris penuh file tempat pola pencarian Anda ditemukan. Dengan cara ini, Anda dapat menggunakan grep untuk memproses file teks dan membaca konten yang paling relevan bagi Anda. Misalnya, Anda mungkin ingin mengaudit peristiwa login pengguna dengan melihat log akses. Alih-alih membaca seluruh log atau menelusuri istilah penelusuran di editor teks, Anda cukup mencetak semua baris yang relevan ke layar dengan perintah grep.

Sintaks

Sintaks dari perintah grep adalah:

# grep [options] {search pattern} {file names}

Menggunakan grep untuk menemukan file

Selain mencari konten file, Anda dapat menggunakan grep untuk mencari direktori untuk menemukan file tertentu. ls -l | perintah grep audit mengembalikan daftar panjang file apa pun di direktori saat ini yang namanya berisi "audit".

Jika Anda ingin membalikkan pencarian (garis keluaran yang tidak sesuai dengan pola), gunakan parameter -v:

$ grep -v t file1
one
four
five
$

Jika Anda perlu menemukan nomor baris tempat ditemukannya pola yang cocok, gunakan parameter -n:

$ grep -n t file1
2:two
3:three
$

Jika Anda hanya perlu melihat hitungan berapa banyak baris yang berisi pola yang cocok, gunakan parameter -c:

$ grep -c t file1
2
$

Jika Anda perlu menentukan lebih dari satu pola yang cocok, gunakan parameter -e untuk menentukan setiap pola individual:

$ grep -e t -e f file1
two
three
four
five
$

Jika Anda menemukan kesalahan di bawah ini saat menjalankan perintah grep:

grep: command not found

Anda dapat mencoba menginstal paket di bawah ini sesuai dengan pilihan distribusi Anda:

Distribusi OS Perintah
OS X brew install grep
Debian apt-get install grep
Ubuntu apt-get install grep
Alpin apk tambahkan grep
Linux Arch pacman -S grep
Kali Linux apt-get install grep
CentOS yum install grep
Fedora dnf instal grep
Raspbian apt-get install grep

Contoh Perintah grep

1. Untuk menafsirkan POLA sebagai ekspresi reguler yang diperluas:

# grep --extended-regexp PATTERN
# grep -E PATTERN 

2. Untuk menafsirkan POLA sebagai daftar string tetap:

# grep -F PATTERN
# grep --fixed-strings PATTERN 

3. Untuk menafsirkan POLA sebagai ekspresi reguler dasar:

# grep -G PATTERN
# grep --basic-regexp PATTERN 

4. Untuk menginterpretasikan POLA sebagai ekspresi reguler Perl:

# grep -P PATTERN
# grep --perl-regexp PATTERN 

5. Untuk menggunakan PATTERN sebagai pola:

# grep -e PATTERN, 
# grep --regexp=PATTERN 

6. Untuk mendapatkan pola dari FILE, satu per baris:

# grep -f FILE, --file=FILE

7. Untuk mengabaikan perbedaan huruf besar-kecil pada PATTERN dan file input:

# grep -i PATTERN
# grep --ignore-case PATTERN

8. Untuk membalikkan rasa kecocokan, untuk memilih garis yang tidak cocok:

# grep -v PATTERN
# grep --invert-match PATTERN 

9. Untuk Memilih hanya baris yang berisi kecocokan yang membentuk seluruh kata:

# grep -w PATTERN
# grep --word-regexp PATTERN

10. Untuk Memilih hanya kecocokan yang sama persis dengan seluruh baris:

# grep -x PATTERN
# grep --line-regexp PATTERN 

11. Untuk mengabaikan kasus:

# grep -y PATTERN 

12. Untuk Menekan output normal; sebagai gantinya cetak hitungan baris yang cocok:

# grep -c PATTERN
# grep --count PATTERN 

13. Untuk menampilkan dalam warna:

# grep --color PATTERN 

14. Untuk Menekan output normal; alih-alih cetak nama setiap file input, dari luar tidak akan diharapkan:

# grep -L
# grep --files-without-match 

15. Untuk Menekan keluaran normal; sebagai gantinya cetak nama setiap file input dari mana output telah dicetak:

# grep -l
# grep --files-with-matches 

16. Untuk Tenang; jangan menulis apa pun ke keluaran standar Keluar segera dengan status nol jika ditemukan kecocokan:

# grep -q 
# grep --quiet
# grep --silent 

17. Untuk Berhenti membaca file setelah NUM baris yang cocok:

# grep -m NUM
# grep --max-count=NUM 

18. Untuk Mencetak hanya bagian yang cocok (tidak kosong) dari garis yang cocok:

# grep -o PATTERN
# grep --only-matching PATTERN 

19. Untuk Menekan pesan kesalahan tentang file yang tidak ada atau tidak dapat dibaca:

# grep -s PATTERN
# grep --no-messages PATTERN 

20. Untuk Mencetak offset byte berbasis 0 dalam file input sebelum setiap baris output:

# grep -b PATTERN
# grep --byte-offset PATTERN 

21. Untuk Mencetak nama file untuk setiap kecocokan:

# grep -H PATTERN
# grep --with-filename PATTERN

22. Untuk Menekan awalan nama file pada output:

# grep -h PATTERN
# grep --no-filename PATTERN 

23. Untuk Menampilkan input yang sebenarnya berasal dari input standar sebagai input yang berasal dari file LABEL:

# grep -cd PATTERN | grep --label=mysearch -H PATTERN 

24. Untuk Mengawali setiap baris output dengan nomor baris berbasis 1 di dalam file inputnya:

# grep -n PATTERN
# grep --line-number PATTERN 

25. Untuk memastikan bahwa karakter pertama dari konten baris yang sebenarnya terletak pada perhentian tab:

# grep -T PATTERN
# grep --initial-tab PATTERN 

26. Untuk Melaporkan offset byte gaya Unix:

# grep -u PATTERN
# grep --unix-byte-offsets PATTERN 

27. Untuk Output byte nol, bukan karakter yang biasanya mengikuti nama file:

# grep -Z PATTERN
# grep --null PATTERN

28. Untuk Mencetak NUM baris konteks akhir setelah baris yang cocok:

# grep -A NUM PATTERN
# grep --after-context=NUM PATTERN 

29. Untuk Mencetak NUM baris dari konteks awal sebelum mencocokkan baris:

# grep -B NUM PATTERN
# grep --before-context=NUM PATTERN 

30. Untuk Mencetak NUM baris konteks keluaran:

# grep -C NUM PATTERN
# grep --context=NUM PATTERN 

31. Untuk Memproses file biner seolah-olah itu teks:

# grep -a PATTERN /tmp/bin
# grep -text PATTERN /tmp/bin 

32. Untuk mengasumsikan bahwa file tersebut bertipe TYPE:

# grep --binary-files=TYPE PATTERN 

33. Untuk Jika file input adalah perangkat, FIFO atau soket, gunakan ACTION untuk memprosesnya:

# grep -D ACTION PATTERN
# grep --devices=ACTION PATTERN 

34. Untuk Jika file input adalah direktori, gunakan ACTION untuk memprosesnya:

# grep -d ACTION PATTERN
# grep --directories=ACTION PATTERN 

35. Untuk melewati file yang nama dasarnya cocok dengan GLOB:

# grep --exclude=GLOB PATTERN 

36. Untuk Melewati file yang nama dasarnya cocok dengan salah satu gumpalan nama file, baca dari FILE:

# grep --exclude-from=FILE PATTERN 

37. Untuk mengecualikan direktori yang cocok dengan pola DIR dari pencarian rekursif:

# grep --exclude-dir=DIR PATTERN

38. Untuk Memproses file biner seolah-olah tidak berisi data yang cocok:

# grep -I PATTERN

39. Untuk mencari hanya file yang nama dasarnya cocok dengan GLOB:

# grep --include=GLOB 

40. Untuk Membaca semua file di bawah setiap direktori, secara rekursif:

# grep -r PATTERN
# grep -R PATTERN 

41. Untuk Menggunakan buffering baris pada output:

# grep --line-buffered PATTERN 

42. Untuk Jika memungkinkan, gunakan panggilan sistem mmap untuk membaca input, alih-alih membaca default:

# grep --mmap PATTERN 

43. Untuk Memperlakukan file sebagai biner:

# grep -U /tmp/file PATTERN
# grep --binary /tmp/file PATTERN 

44. Untuk Memperlakukan input sebagai satu set baris:

# grep -z PATTERN
# grep --null-data PATTERN 

45. Untuk menampilkan bantuan:

# grep -h 

46. ​​Untuk mencetak nomor versi grep:

# grep -V 


Linux
  1. manajer langganan:perintah tidak ditemukan

  2. dnf:perintah tidak ditemukan

  3. bc:perintah tidak ditemukan

  1. dpkg:perintah tidak ditemukan

  2. id:perintah tidak ditemukan

  3. w:perintah tidak ditemukan

  1. ifrename:perintah tidak ditemukan

  2. df:perintah tidak ditemukan

  3. du:perintah tidak ditemukan