Est - il possible de garder la colorisation du texte passé par le tuyau |
à head
, tail
, less
, etc.?
Est - il possible de garder la colorisation du texte passé par le tuyau |
à head
, tail
, less
, etc.?
Réponses:
Je suppose que vous utilisez ls
et souhaitez conserver les codes de couleur du terminal. Vous pouvez dire ls --color=always
(au lieu de la valeur par défaut de --color=auto
), qui préservera les codes, mais cela ne garantira pas que la chose que vous canalisez sache comment les comprendre.
Si vous utilisez à la glark
place, grep
il essaiera de s'afficher avec des couleurs.
Si vous utilisez less
avec -R
elle tentera d'afficher des couleurs.
git
. J'ai trouvé qu'il a une configuration similaire (par exemple git config color.diff always
) qui conserve la colorisation.
git diff
sortie comme entrée car elle générera toujours les codes d'échappement ANSI.
grep "string" file.txt | head
pour m'assurer que le résultat de grep était coloré, je viens de le changer engrep "string" file.txt --color=always | head
Cela dépend du programme qui génère la sortie dans le tuyau.
head
, tail
, Etc ne sont pas ceux enlever les couleurs, il est le programme de génération des données qui vérifient généralement si la sortie va à la console (couleur), un fichier ou un tuyau (non coloré)
J'ai trouvé un autre SU Q&A montrant comment mentir aux programmes de tuyauterie pour sortir comme s'ils envoyaient une sortie à une console (en émulant une console avec unbuffer
)
color=auto
mode (pour que le programme pense que la sortie va à la console au lieu du canal)?
head
, tail
etc., détecte-t-il qu'il est redirigé vers un autre programme (afin qu'il puisse générer des données sans couleurs, etc.).
head
,tail
, Etc ne sont pas ceux enlever les couleurs, il est le programme de génération des données qui vérifient généralement si la sortie va à la console (couleur), un fichier ou un tube (non coloré).