Как я могу просмотреть сжатые файлы без необходимости набирать zless?


33

Я использую Ubuntu, и я хотел бы иметь возможность печатать less compressed_text_file.gzи печатать содержимое текстового файла в несжатом виде. Есть ли способ сделать это?

Ответы:


29

Вы можете настроить сочетания клавиш и установить множество параметров для lessв файле ~/.lesskey. Как только вы создали файл, запустите lesskeyкоманду ; он генерирует файл с именем, ~/.lessкоторый lessчитает при запуске.

Настройка, которую вы хотите LESSOPEN. Это входной форматтер за меньшие деньги. lessПакет поставляется с образцом форматировщиком в /bin/lesspipe; он распаковывает сжатые файлы, показывает списки содержимого для многих форматов многофайловых архивов и преобразует несколько форматированных форматированных текстов в обычный текст. В вашем ~/.lesskey:

#env
LESSOPEN=|/bin/lesspipe %s

40

Используйте zcat, затем направьте трубку less.

$ zcat $FILE | less

2
Я бы предпочел, если бы lessпросто работал над сжатыми файлами.
Райан К. Томпсон

4
В отличие от принятого ответа, это чистое и однозначное решение. Благодарность!
Павел Власов

Это так просто, как это возможно, победа. Следует иметь в виду, что если вы открываете большой файл с меньшим количеством файлов, он сразу же открывается удобным для использования способом. При таком подходе он откроется, но вы не сможете сделать много (если вообще что-нибудь), пока сжатие не завершит его все через канал. Так что, если вы планируете открывать его повторно, лучше сначала распаковать его. В противном случае, сделайте это и проверьте свою электронную почту или что-то :)
Макс Уильямс

2

Я использую IBM, и при использовании zcatон жалуется, что не может найти файл, заканчивающийся на .Z.

В IBM можно использовать gzcat:

$ gzcat log_file.gz | less

Что вы подразумеваете под «использованием IBM»? Вы имеете в виду AIX?
Дункан Х Симпсон

Использование gzcatтакже необходимо в Solaris 5
John
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.