Иногда менее неправильно распознает файл как двоичный файл и пытается показать hexdump на LHS (обычно с не алфавитно-цифровыми символами, но все еще содержащие печатные символы ASCII). Как заставить его распознавать его как текст?
Иногда менее неправильно распознает файл как двоичный файл и пытается показать hexdump на LHS (обычно с не алфавитно-цифровыми символами, но все еще содержащие печатные символы ASCII). Как заставить его распознавать его как текст?
Ответы:
Я думаю, что у вас (или в вашем дистрибутиве) установлен LESSOPEN
фильтр less
. Попробуйте сказать следующее, чтобы less
не использовать фильтр:
less -L my_binary_file
Для дальнейшего изучения также попробуйте echo $LESSOPEN
. Вероятно, он содержит имя сценария оболочки ( /usr/bin/lesspipe
для меня), который вы можете прочитать, чтобы увидеть, какие существуют фильтры. Также попробуйте man less
и прочитайте раздел Input Preprocessor .
Для случая, когда LESSOPEN
не проблема. less
Можно попробовать следующие варианты:
-f
или --force
: Помимо разрешения открытия нерегулярных файлов, он «также подавляет предупреждение при открытии двоичного файла».-r
или --raw-control-chars
: «Приводит к отображению необработанных управляющих символов. По умолчанию отображаются управляющие символы с использованием обозначения каретки; например, элемент управления A (восьмеричное 001) отображается как ^A
. Предупреждение: при использовании этой -r
опции меньше не может отслеживать фактического внешнего вида экрана (поскольку это зависит от того, как экран реагирует на каждый тип управляющего символа). Таким образом, могут возникнуть различные проблемы с отображением, такие как длинные строки, разделенные в неправильном месте.-R
или --RAW-CONTROL-CHARS
: Более слабая форма -r
выше, только «цветные» escape-последовательности ANSI выводятся в «сыром» виде. «В отличие от -r, внешний вид экрана поддерживается в большинстве случаев правильно». Это полезно, например, если вы просматриваете файл журнала, в котором используются последовательности управления цветом ANSI.Вы можете экспериментировать, нажимая клавиши с -последующим rбез повторного запуска less
. Вы можете добавить эти параметры в LESS
переменную среды, чтобы сделать настройку постоянной (например, изменив файл профиля оболочки); если ваш терминал может отображать цвета, я настоятельно рекомендую добавить -R
в LESS
настройках. Вы должны убедиться, что ваш терминал настроен на использование той же кодировки символов, что и ваш текстовый файл.
cat somefile
отображается как ASCII, ноless somefile
говорит, что может быть двоичным и отображается как таковой.echo $LESSOPEN
пусто иless -L
не помогает