manpage สำหรับgrep
อธิบาย-I
แฟล็กดังนี้:
-I Ignore binary files. This option is equivalent to
--binary-file=without-match option.
มันยังบอกว่าเรื่องนี้เกี่ยวกับไฟล์ไบนารี:
--binary-files=value Controls searching and printing of binary files.
Options are binary, the default: search binary files but do not print
them; without-match: do not search binary files; and text: treat all
files as text.
ฉันไม่สามารถนึกถึงสถานการณ์ที่ฉันสนใจเกี่ยวกับการจับคู่ในไฟล์ไบนารี หากสถานการณ์ดังกล่าวมีอยู่แน่นอนมันจะต้องเป็นข้อยกเว้นมากกว่าบรรทัดฐาน เหตุใดจึงไม่grep
เพิกเฉยต่อไฟล์ไบนารีโดยค่าเริ่มต้นแทนที่จะกำหนดให้ตั้งค่าสถานะนี้ให้ทำ
หมายเหตุสำหรับคำสั่งอื่น ๆ ที่ไม่สนับสนุนตัวแปรดังกล่าว: คุณสามารถตั้งค่าตัวเลือกเริ่มต้นโดยกำหนดนามแฝงใน
—
Erik
.(ba|z|foo)shrc':
นามแฝงของคุณgrep = "grep -I"
สิ่งนี้มีประโยชน์มากจริงๆ ตัวอย่างเช่นฉันค้นหารุ่นที่เป็นเอกภาพของโครงการและจำไม่ได้ว่าไฟล์ใดถูกเก็บไว้ฉันค้นหารูปแบบของรุ่นและมันก็มาพร้อมกับไฟล์ไบนารีบางส่วนที่ตรงกับ มันกลับกลายเป็นว่ามันเป็นรุ่น pre-5 รุ่นนั้นมีอยู่ในไฟล์ไบนารีเท่านั้นดังนั้นหากไม่มีการจับคู่แบบไบนารีฉันอาจพลาดไป
—
Svend Hansen
FYI มีเครื่องมือที่เป็นแอ๊กชั่นซึ่งเป็นชนิดของ "ดีกว่า grep" Ack ไม่ค้นหาไฟล์ไบนารี ใน Debian มันมาภายใต้ชื่อ "ack-grep"
—
teika kazura
GREP_OPTIONS
เป็นการตั้งค่าที่คุณต้องการจากนั้นคุณไม่จำเป็นต้องใช้สวิตช์บรรทัดคำสั่งจำนวนมาก