Odpowiedzi:
Najprawdopodobniej twój lsjest aliasowany ls --color=auto, co mówi, lsaby używać kolorów tylko wtedy, gdy jego wynik jest tty. Jeśli to zrobisz ls --color(co jest moralnie równoważne ls --color=always), wymusi to włączenie kolorów.
Możesz również zmienić swój alias, aby to zrobić, ale tak naprawdę nie nazwałbym tego dobrym pomysłem. Lepiej zrobić inny alias --color.
lessteż potrzebuje -R.
ls --color=always | lessi dostałem: ESC[01;32mexecute_once.shESC[0m(Wiem, że to jest stare i prawdopodobnie nie obchodzi cię to, ale dla przyszłych gości może się to przydać)
Wypróbuj mniej dzięki opcji -R takiej jak ta:
command | less -R
Działa to dla mnie w jednej linijce:
ls -la | grep --color=always bash | less -r
I tak też:
ls --color | less -R
Ale musisz nieco ulepszyć pierwotne wyjście (w tym przypadku wyjście ls) za pomocą parametru --color.
-Gto brakuje kolorów
-ROpcja jest skrótem --RAW-CONTROL-CHARS.
ls --colorlubls --color=always, jeśli o to chodzi?