Quando si utilizza git sembra sapere magicamente se lo standard sta passando attraverso una pipe o in un file vs quando viene visualizzato sulla console. Ad esempio, se hai i colori abilitati e lo faiIn Linux, come posso verificare se l'output di un programma sta per un terminale live o su un file?
git status
colorerà l'output per diverse categorie di file elencati. Tuttavia, se si fa
git status | less
o
git status > status.txt
rimuove il linux color formatting e si vede solo pianura, il testo incolore.
In che modo git
rileva se l'output dei comandi sta andando al file o al terminale?
Non credo che questo dovrebbe essere il superutente, come l'OP sta veramente cercando è come funziona il programma di esempio. git rileva dove viene reindirizzato o meno. – t0mm13b
Sono d'accordo con @ tommieb75 si tratta di una domanda API, non di come faccio una domanda di amministrazione. –
A proposito, se non fossi solo curioso, e lo stavi chiedendo perché volevi avere un output "colorized" * e * paginato da git, puoi fare pasticci con le impostazioni di 'git config' come' core.pager' (meno) e 'color.pager' (true). http://www.kernel.org/pub/software/scm/git/docs/git-config.html – rescdsk