2015-02-28 9 views
22

Sto cercando di aggiungere l'output a colori ai miei errori in uno script bash che ho in esecuzione su un mac. Il problema è che i colori non stanno funzionando. Ho creato il più semplice degli script per dimostrare che non funziona:Come ottenere lo script della shell osx per mostrare i colori in eco

#!/bin/bash 

echo -e "\e[1;31m This is red text \e[0m" 

Tuttavia, quando l'eseguo, non vedo i colori a tutti, come mostrato in questa immagine. L'output a colori del comando ls funziona comunque bene.

enter image description here

+0

un'occhiata a questo, che ho risposto alla tua domanda c'è: https://stackoverflow.com/a/48216286/3782119 –

+0

Ero felice di sapere che bash era vecchio, e aggiornandolo ha risolto il mio problema. – nycynik

risposta

17

navi OSX con una vecchia versione di Bash che non supporta il carattere \e fuga. Utilizzare \x1B o aggiornare Bash (brew install bash).

Ancora meglio, tuttavia, sarebbe quello di utilizzare tput.

+0

Grazie! Ho trovato una soluzione migliore dopo l'installazione di brew su http://brew.sh/ – nycynik

3

Un'altra opzione potrebbe essere l'utilizzo di zsh, che rispetta la notazione \e.

#!/bin/zsh 
Problemi correlati