Risposte:
Molto probabilmente il tuo lsè alias ls --color=auto, il che dice lsdi 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.
lessanche esigenze -R.
ls --color=always | lesse 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.
-Gi colori mancanti
-Ropzione è l'abbreviazione di --RAW-CONTROL-CHARS.
ls --colorols --color=always, del resto ?