$someVarฉันจำเป็นต้องค้นหาตัวแปร PHP อย่างไรก็ตาม Grep คิดว่าฉันพยายามเรียกใช้ regex และบ่นว่า:
$ 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">>
ฉันไม่เห็นตัวเลือกในการบอก grep ว่าอย่าตีความสตริงเป็น regex แต่รวม$อักขระสตริงอื่นไว้ด้วย
grepการตีความ$เป็นนิพจน์ทั่วไป มันเกี่ยวกับการแทนที่เชลล์$someVarด้วยค่าของตัวแปรสภาพแวดล้อมsomeVarซึ่งน่าจะเป็นสตริงว่าง ตัวอย่างที่สองไม่ควรส่งคืนแถวทั้งหมดที่มีsomeVarแต่บรรทัดทั้งหมดเนื่องจากสตริงว่างอยู่ในทุกบรรทัด ที่จะบอกเปลือกจะไม่ได้ใช้แทนคุณต้องใช้หรือ'$someVar'\$someVarจากนั้นคุณจะต้องจัดการกับการgrepตีความ$ตัวละคร