Показывать специальные символы в Unix при использовании команды " меньше
Я хотел бы знать, как просматривать специальные символы при использовании команды "меньше". Например, я хочу видеть непечатаемые символы со специальной нотацией. Например, в Редакторе ' vi ' я использую "set list on", чтобы увидеть символы окончания строки, представленные символом dollar'$'. Точно так же я хотел бы сделать это с помощью команды "меньше".
Я сослался на Unix less manual, но безрезультатно.
4 ответа:
less будет искать в своей среде, чтобы увидеть, если есть переменная с именем LESS
вы можете установить меньше в одном из ваших~/.профиль.( bash_rc и т. д.), а затем в любое время вы запускаете
less
от линии команд, он найдет меньше.попробуйте добавить этот
export LESS="-CQaix4"
это настройка, которую я использую, есть некоторые поведения, встроенные в которые могут запутать вас, так что ...
вы можете узнать о том, что все это означает в справке
less
, просто нажмите клавишу " h " и нос вокруг, или бегите меньше-помогите.edit
Я посмотрел на справку и заметил, что есть также опция-r
-r -R .... --raw-control-chars --RAW-CONTROL-CHARS Output "raw" control characters.
Я согласен, что кошка может быть наиболее точное соответствие вашим заявленным потребностям.
cat -vet file | less
добавит ' $ 'в конце каждой строки и преобразует tab char в visual'^I'.
cat --help (edited) -e equivalent to -vE -E, --show-ends display $ at end of each line -t equivalent to -vT -T, --show-tabs display TAB characters as ^I -v, --show-nonprinting use ^ and M- notation, except for LFD and TAB
Я надеюсь, что это помогает.
вы можете сделать это с кошкой, и эта труба выводит меньше:
cat -e yourFile | less
этот отрывок из
man cat
поясняет, что-e
означает:-e equivalent to -vE -E, --show-ends display $ at end of each line -v, --show-nonprinting use ^ and M- notation, except for LFD and TAB
на
less
использовать-u
для отображения возврата каретки (^M
) и backspaces (^H
), или-U
чтобы показать предыдущие и вкладки (^I
) например:$ awk 'BEGIN{print "foo\bbar\tbaz\r\n"}' | less -U foo^Hbar^Ibaz^M (END)
без
-U
переключить выход будет:fobar baz (END)
посмотреть
man less
для более точного описания функций.
все специальные непечатаемые символы отображаются с использованием ^ нотации в меньшем количестве. Тем не менее, подача строки на самом деле печатается (просто сделайте новую строку), поэтому не считается специальной, поэтому у вас будут проблемы с ее заменой. Если вы просто хотите увидеть окончания строк, самый простой способ может быть
sed -e 's/$/$/' | less