Saya ingin tahu file mana yang memiliki string $Id$
.
grep \$Id\$ my_dir/mylist_of_files
mengembalikan 0 kejadian.
Saya menemukan bahwa saya harus menggunakan
grep \$Id$ my_dir/mylist_of_files
Lalu saya melihat bahwa $Id
berwarna pada output, yaitu sudah cocok.
Bagaimana saya bisa mencocokkan yang kedua $
dan mengapa tidak \$Id\$
berhasil.
Tidak masalah apakah karakter kedua $
adalah karakter terakhir atau bukan.
Saya menggunakan grep
2.9.
Sebelum memposting pertanyaan saya, saya menggunakan google ...
Untuk mencari $ (tanda dolar) di file bernama test2, masukkan:
grep \\ $ test2
Karakter \\ (double backslash) diperlukan untuk memaksa shell untuk melewatkan \ $ (backslash tunggal, tanda dolar) ke perintah grep. Karakter \ (backslash tunggal) memberi tahu perintah grep untuk memperlakukan karakter berikut (dalam contoh ini $) sebagai karakter literal daripada karakter ekspresi. Gunakan perintah fgrep untuk menghindari keharusan menggunakan karakter escape seperti backslash.
tapi saya tidak mengerti mengapa itu grep \$Id
berhasil dan mengapa grep \\$Id\\$
tidak.
Aku sedikit bingung...
sumber
grep -F '$Id$'
.grep '$Id\$' ...
dangrep \$Id\\$ ...
bekerja$
dengan sebelumnya$
:grep '$$Id\$$'
. stackoverflow.com/a/2382810/2097284Untuk mencari
$Id$
file: Anda dapat menggunakan:grep '\$id*' filename
sumber
$id
, jadi$idea
misalnya juga, bukan hanya$id$
.