Почему grep игнорирует двоичные файлы по умолчанию?

В 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 игнорирует двоичные файлы по умолчанию, а не требует установки этого флага?

2 Solutions collect form web for “Почему grep игнорирует двоичные файлы по умолчанию?”

Не все, что думает grep, является двоичным файлом, на самом деле является двоичным файлом. например, журналы марионетки имеют в них кодирование цвета ansi, что означает, что grep считает, что они двоичные. Я все равно хотел бы их искать, если бы я шел через / var / log.

Способность grep искать двоичные файлы также полезна, когда я компилирую программу, а компоновщик ( ld ) жалуется на то, что некоторая функция не найдена. Я могу использовать команду типа

  grep имя_функции / lib / lib * 

чтобы найти библиотеку, которая ее содержит. (Библиотеки – это двоичные файлы.)

  • Извлечь вторую строку в строке вывода
  • Есть ли одна строка для печати самой длинной строки в файлах в каталоге?
  • grep искать error_log и отправлять сообщения только по электронной почте, когда результаты будут найдены?
  • Цветной выход grep: не GREP_OPTIONS не является псевдонимом
  • Грепируйте линии между появлением одного и того же шаблона
  • Почему эта команда не работает: «ps aux | grep xscreensaver "
  • Разрешить регулярное выражение с плавающей запятой
  • Сценарий оболочки для записи выбранных полей в одну строку
  • Как добавить слово для строки, в которой выполняется транспонирование
  • bash - почему \ x0d \ x20 стирает строку
  • Может ли кто-нибудь объяснить это выражение по частям, пожалуйста? grep '\ ( \). \ 1'
  • Interesting Posts
    Linux и Unix - лучшая ОС в мире.