Coba yang berikut ini:
less -R
dari man less
:
-r
atau--raw-control-chars
Menyebabkan karakter kontrol "mentah" ditampilkan. (...)
-R
atau--RAW-CONTROL-CHARS
Seperti
-r
, tetapi hanya urutan escape "warna" ANSI yang dihasilkan dalam bentuk "mentah". (...)
(pembaruan pada 2020)
Cara yang lebih cepat akan menggunakan less -R
ref. https://superuser.com/a/117842/34893
Anda dapat memanfaatkan kekuatan pygmentize dengan lebih sedikit - secara otomatis! (Tidak perlu menyalurkan dengan tangan.)
Instal pygments
dengan manajer paket atau pip Anda (mungkin disebut python-pygments
) atau dapatkan di sini http://pygments.org/download/.
Tulis file ~/.lessfilter
#!/bin/sh
case "$1" in
*.awk|*.groff|*.java|*.js|*.m4|*.php|*.pl|*.pm|*.pod|*.sh|\
*.ad[asb]|*.asm|*.inc|*.[ch]|*.[ch]pp|*.[ch]xx|*.cc|*.hh|\
*.lsp|*.l|*.pas|*.p|*.xml|*.xps|*.xsl|*.axp|*.ppd|*.pov|\
*.diff|*.patch|*.py|*.rb|*.sql|*.ebuild|*.eclass)
pygmentize -f 256 "$1";;
.bashrc|.bash_aliases|.bash_environment)
pygmentize -f 256 -l sh "$1";;
*)
if grep -q "#\!/bin/bash" "$1" 2> /dev/null; then
pygmentize -f 256 -l sh "$1"
else
exit 1
fi
esac
exit 0
Di .bashrc
Anda tambahkan
export LESS='-R'
export LESSOPEN='|~/.lessfilter %s'
Juga, Anda perlu membuat ~/.lessfilter
dapat dieksekusi dengan menjalankan
chmod u+x ~/.lessfilter
Diuji pada Debian.
Anda mengerti. Ini tentu saja dapat ditingkatkan lebih lanjut, menerima lebih banyak ekstensi atau mengurai shebang untuk penerjemah lain selain bash. Lihat beberapa jawaban lain untuk itu.
Idenya berasal dari postingan blog lama dari pembuat Pygments, tetapi postingan aslinya sudah tidak ada lagi.
Saya mendapat jawabannya di posting lain:Less and Grep:Mendapatkan hasil berwarna saat menggunakan pipa dari grep ke less
Saat Anda menjalankan
grep --color
itu menyiratkangrep --color=auto
yang mendeteksi apakah output adalah terminal dan jika memungkinkan warna. Namun, ketika mendeteksi pipa, pewarnaan akan dinonaktifkan. Perintah berikut:grep --color=always "search string" * | less -R
Akan selalu mengaktifkan pewarnaan dan mengganti deteksi otomatis, dan Anda akan mendapatkan penyorotan warna dalam jumlah kecil.
Peringatan:Jangan masukkan --color=always
sebagai alias, kadang-kadang merusak barang. Itu sebabnya ada --color=auto
opsi.