Иногда я быстро хочу просмотреть содержимое файла из командной строки. Для этого я, конечно, использую cat
, но это часто исходные файлы на Python , Java или в простом HTML . Для этих файлов было бы удобно, если cat
бы можно было придать файлам некоторую цветовую разметку, чтобы их было легче читать.
Можно cat
сделать такую вещь?
cat -v
вреде .Ответы:
cat
не в состоянии это сделать. Тем не менее, возможно, фрагменты могут помочь вам там. Это скрипт на python и может быть установлен через apt-getили легко загружается и устанавливается через easy_install.
Он поддерживает множество исходных кодов языков , а также языков разметки
Используется
источник
pygmentize -g <filename>
,-g
ключ важен для обработки файла без лексера. например, если вы попытаетесь/etc/fstab
открыть без-g
него не удастся.pygmentize --help
Если-g
пройдено», попытаться угадать лексер по содержимому файла или передать простым текстом, если это не удастся (это может работать для стандартного ввода).funced cat... type pygmentize -g $argv... save..funcsave cat
.bashrc
я добавил:command -v pygmentize >/dev/null 2>&1 && alias cat='pygmentize -g'
Не от
cat
самого себя, но вы можете использовать что-то вроде подсвечивания источника или суперкадра или выделенияИли с функцией ( источником ):
Требуется: Pygments (
sudo apt-get install python-pygments python3-pygments
) Добавить его как функцию в bash .functions и дать ему имя, например color ().источник
Как от этого ответа здесь , вы можете использовать
python-pygments
пакеты для выделения материала. Сначала сделайте:тогда:
тогда попробуйте:
Вы также можете установить его как псевдоним, как в ответе, который я связал - в основном, запустите это:
Закройте терминал, откройте его снова, и
catc
теперь команда должна работать - если это не так, убедитесь, что эти строки находятся в.bashrc
файле и не закомментированы:Другое дело было бы просто использовать
nano
:источник
man view
илиman vim
Основное использование:
view <filename>
Выйти:
:q<Return>
(добавьте<Esc>
первый, если используетеvim
) илиZZ
(дважды заглавные z).Текстовый редактор программиста уже
vim
имеет все, что вам нужно, и, вероятно, уже является частью вашей системы.vim
имеет режим только для чтения, активированный с помощьюview
илиvim -R
. Если все, что вы хотите сделать, это просмотреть размеченный файл, этого должно быть достаточно.Простой в использовании, навигационный, доступен везде. Нет необходимости возиться с установкой нового программного обеспечения или написанием сценариев bash.
источник
vim
илиview
вы просто указываете файл:view file.py
так что никакой разницы нетcat
. Конечно, вам нужно закрыть его, но на самом деле:q<Return>
илиZZ
нет сложных задач.Можно проверить ccat .
Это добавляет подсветку синтаксиса к выходным файлам.
источник
cat
не может производить подсветку синтаксиса исключительно. Тем не менее, вы можете сделать это следующим образом, используяpython-pygments
. Сначала установите его из терминала как,Теперь скопируйте функцию ниже
~/.bashrc
. Это даст вам то, что вы хотите, более того, оно сохранит свойства,cat
иначе нет смысла использоватьcat
Источник
~/.bashrc
как,Это даст цветную продукцию,
Он также соединится с цветом,
источник
pygmentize?
Я открываю его с помощью команды формыxterm -e "pygmentize -g <filename>"
и нахожу, что единственный способ прокрутки - это использовать полосу прокрутки. Я попытался передать вывод,less
но это привело к выводу мусора.pygmentize
с меньшими затратами. Создайте функцию bashlessc
следующим образом:lessc () { pygmentize -gf terminal "$1" | less -R }
Летучая мышь - кошка-клон с крыльями
Вы также можете проверить,
bat
какие из следующих функций:less
cat
перенаправленияпредварительный просмотр
Фото взято с официального GitHub
Установка
Вы можете получить последний пакет Debian здесь и установить его с:
Адаптация номера версии и архитектуры.
источник
Другие ответы охватывают, почему
cat
не в состоянии это сделать. Хотя вы можете сделать это с меньшими затратами, используя lesspipe.sh .источник
Вместо установки стороннего пакета вы можете просто использовать его
gedit
для быстрого просмотра файла с подсветкой синтаксиса. Например, скопируйте адресную строку выше и вставьте в свой терминал:Вы увидите этот вопрос в HTML с форматированными цветами:
gedit
клавиши навигацииcat
которого не требуется нажатия клавиш для закрытия.источник