Antworten:
Höchstwahrscheinlich haben Sie ls
ein Alias ls --color=auto
, das angibt , ls
Farben nur dann zu verwenden, wenn die Ausgabe ein Tty ist. Wenn Sie dies tun ls --color
(was moralisch äquivalent ist ls --color=always
), wird dies dazu zwingen, Farben einzuschalten.
Sie könnten auch Ihren Alias ändern, um das zu tun, aber ich würde das nicht wirklich eine gute Idee nennen. Besser einen anderen Alias mit machen --color
.
less
braucht -R
auch.
ls --color=always | less
und bekam: ESC[01;32mexecute_once.shESC[0m
(Ich weiß, das ist alt und Sie interessieren sich wahrscheinlich nicht, aber für zukünftige Besucher kann dies nützlich sein)
Versuchen Sie es weniger mit der Option -R wie folgt:
command | less -R
Dies funktioniert für mich in einem Einzeiler wie folgt:
ls -la | grep --color=always bash | less -r
Und so auch:
ls --color | less -R
Sie müssen jedoch die primäre Ausgabe (in diesem Fall die Ausgabe von ls) ein wenig mit dem Parameter --color anpassen.
-G
, die Farben fehlen
-R
Option ist kurz für --RAW-CONTROL-CHARS
.
ls --color
oderls --color=always
zu sein?