Bir PHP değişkeni aramam gerekiyor $someVar. Ancak Grep bir normal ifade çalıştırmaya çalıştığımı düşünüyor ve şikayet ediyor:
$ grep -ir "Something Here" * | grep $someVar
Usage: grep [OPTION]... PATTERN [FILE]...
Try `grep --help' for more information.
$ grep -ir "Something Here" * | grep "$someVar"
<<Here it returns all rows with "someVar", not only those with "$someVar">>
Ben grep söylediği için bir seçenek görmüyorum değil bir regex olarak dize yorumlamak, ancak dahil etmek $sadece başka bir dize karakter olarak.
grepyorumlamakla ilgili değil$. Bu, kabuğun$someVarortam değişkeninin değeriylesomeVar, muhtemelen boş dizeyle değiştirilmesiyle ilgilidir. İkinci örnek, tüm satırları içeren tüm satırları döndürmemelidirsomeVar, çünkü boş dize tüm satırlardadır. Kabuğun yerine geçmemesini söylemek için'$someVar'veya kullanmanız gerekir\$someVar. O zaman karakteringrepyorumuyla uğraşmanız gerekecek$.