Risposte:
Molto probabilmente il tuo ls
è alias ls --color=auto
, il che dice ls
di usare i colori solo quando il suo output è un valore. Se lo fai ls --color
(che è moralmente equivalente a ls --color=always
), questo lo costringerà ad attivare i colori.
Potresti anche cambiare il tuo alias per farlo, ma non lo definirei davvero una buona idea. Meglio creare un diverso alias con --color
.
less
anche esigenze -R
.
ls --color=always | less
e ottenuto: ESC[01;32mexecute_once.shESC[0m
(So che questo è vecchio e probabilmente non ti interessa, ma per i futuri visitatori, questo potrebbe essere utile)
Prova di meno con l'opzione -R in questo modo:
command | less -R
Questo funziona per me in un one-liner come questo:
ls -la | grep --color=always bash | less -r
E così anche:
ls --color | less -R
Ma devi modificare un po 'l'output primario (in questo caso l'output di ls) con il parametro --color.
-G
i colori mancanti
-R
opzione è l'abbreviazione di --RAW-CONTROL-CHARS
.
ls --color
ols --color=always
, del resto ?