L'echo command è uno dei comandi più basilari e usati di frequente in Linux. Gli argomenti passati a echo vengono stampati sullo standard output.
echo è comunemente usato negli script della shell per visualizzare un messaggio o produrre i risultati di altri comandi.
comando echo #
echo è una shell integrata in Bash e nella maggior parte delle altre shell popolari come Zsh e Ksh. Il suo comportamento è leggermente diverso da shell a shell.
C'è anche un /usr/bin/echo autonomo utility, ma di solito la versione incorporata della shell avrà la precedenza. Tratteremo la versione incorporata di Bash di echo .
La sintassi per echo il comando è il seguente:
echo [-neE] [ARGUMENTS]
- Quando il
-nviene utilizzata, la nuova riga finale viene soppressa. - Se il
-eviene fornita l'opzione, verranno interpretati i seguenti caratteri con escape barra rovesciata:\\- Visualizza un carattere barra rovesciata.\a- Avviso (BEL)\b- Visualizza un carattere backspace.\c- Sopprimi ogni ulteriore output\e- Visualizza un carattere di escape.\f- Visualizza un carattere feed modulo.\n- Visualizza una nuova riga.\r- Visualizza un ritorno a capo.\t- Visualizza una scheda orizzontale.\v- Visualizza una scheda verticale.
- Il
-El'opzione disabilita l'interpretazione dei caratteri di escape. Questa è l'impostazione predefinita.
Ci sono alcuni punti da considerare quando si usa echo comando.
- La shell sostituirà tutte le variabili, i caratteri jolly e i caratteri speciali prima di passare gli argomenti a
echocomando. - Sebbene non sia necessario, è buona pratica di programmazione racchiudere gli argomenti passati a
echotra virgolette doppie o singole. - Quando si utilizzano virgolette singole
''il valore letterale di ogni carattere racchiuso tra le virgolette verrà mantenuto. Variabili e comandi non verranno espansi.
echo Esempi #
Gli esempi seguenti mostrano come utilizzare il comando echo:
-
Visualizza una riga di testo sull'output standard.
echo Hello, World!Hello, World! -
Visualizza una riga di testo contenente una doppia virgoletta.
Per stampare una virgoletta doppia, racchiudila tra virgolette singole o esci con il carattere barra rovesciata.
echo 'Hello "Linuxize"'echo "Hello \"Linuxize\""Hello "Linuxize" -
Visualizza una riga di testo contenente una singola citazione.
Per stampare una virgoletta singola, racchiuderla tra virgolette doppie o utilizzare le virgolette ANSI-C.
echo "I'm a Linux user."echo $'I\'m a Linux user.'I'm a Linux user. -
Mostra un messaggio contenente caratteri speciali.
Usa il
-eopzione per abilitare l'interpretazione dei caratteri di escape.echo -e "You know nothing, Jon Snow.\n\t- Ygritte"You know nothing, Jon Snow. - Ygritte -
Caratteri corrispondenti al modello.
L'
echocomando può essere utilizzato con caratteri di corrispondenza dei modelli, come i caratteri jolly. Ad esempio, il comando seguente restituirà i nomi di tutti i.phpfile nella directory corrente.echo The PHP files are: *.phpThe PHP files are: index.php contact.php functions.php -
Reindirizza a un file
Invece di visualizzare l'output sullo schermo, puoi reindirizzarlo a un file utilizzando il
>,>>operatori.echo -e 'The only true wisdom is in knowing you know nothing.\nSocrates' >> /tmp/file.txtSe il file.txt non esiste, il comando lo creerà. Quando si utilizza
>il file verrà sovrascritto, mentre il>>aggiungerà l'output al file.Usa il
catcomando per visualizzare il contenuto del file:cat /tmp/file.txtThe only true wisdom is in knowing you know nothing. Socrates -
Visualizzazione delle variabili
echopuò anche visualizzare variabili. Nell'esempio seguente, stamperemo il nome dell'utente attualmente connesso:echo $USERlinuxize$USERè una variabile di shell che contiene il tuo nome utente. -
Visualizzazione dell'output di un comando
Usa il
$(command)espressione per includere l'output del comando inechol'argomento di. Il comando seguente visualizzerà la data corrente:echo "The date is: $(date +%D)"The date is: 04/17/19 -
Visualizzazione a colori
Usa le sequenze di escape ANSI per cambiare i colori di primo piano e di sfondo o per impostare le proprietà del testo come il trattino basso e il grassetto.
echo -e "\033[1;37mWHITE"echo -e "\033[0;30mBLACK"echo -e "\033[0;34mBLUE"echo -e "\033[0;32mGREEN"echo -e "\033[0;36mCYAN"echo -e "\033[0;31mRED"echo -e "\033[0;35mPURPLE"echo -e "\033[0;33mYELLOW"echo -e "\033[1;30mGRAY"
Conclusione #
A questo punto, dovresti avere una buona comprensione di come echo il comando funziona.
Se hai domande o feedback, sentiti libero di lasciare un commento.