Показывать специальные символы в Unix при использовании команды " меньше


Я хотел бы знать, как просматривать специальные символы при использовании команды "меньше". Например, я хочу видеть непечатаемые символы со специальной нотацией. Например, в Редакторе ' vi ' я использую "set list on", чтобы увидеть символы окончания строки, представленные символом dollar'$'. Точно так же я хотел бы сделать это с помощью команды "меньше".

Я сослался на Unix less manual, но безрезультатно.

4 61

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