Il comando Echo di Linux: una spiegazione

Le distribuzioni Linux vi consentono di configurare e gestire autonomamente il sistema. Il comando della bash denominato Echo è uno dei più diffusi in assoluto. Viene utilizzato nei file e negli script Bash al fine di visualizzare un messaggio di stato in un file o sul vostro schermo. Vi spieghiamo come funziona il comando Echo di Linux e come fare per impostare i colori per il font e per lo sfondo.

Che cos’è il comando Echo e come funziona?

Il comando Echo di Linux ripete quello che lo si incarica di ripetere. La sua funzione è estremamente facile e per questo assolutamente necessaria. Senza echo non visualizzereste, ad esempio, i risultati degli script della shell. La shell è l’interfaccia utente nella quale potete digitare svariati comandi, come, ad esempio, i comandi Linux Tail, Head, Cat o lo stesso comando Echo.

Ma come funziona il comando Echo esattamente e che aspetto ha? Qui di seguito riportiamo la sintassi del comando:

echo [option] [string]

Il funzionamento di base di echo è lo stesso in tutti i linguaggi di programmazione: digitate quello che volete, nella maggior parte dei casi sotto forma di una sequenza di caratteri, e quelle stesse informazioni vengono riprodotte esattamente sullo schermo.

N.B.

L’interfaccia utente o l’interprete a riga di comando shell viene chiamata anche bash shell. Bash è la shell standard nelle distribuzioni Linux e la finestra di testo all’interno della quale digitate i vostri comandi. Il programma echo è una componente elementare di Ubuntu ed è preinstallato su tutti i sistemi operativi corrispondenti.

Come visualizzare testo e informazioni con il comando echo di Linux?

Nel nostro primo esempio vogliamo visualizzare un testo e il contenuto di alcune variabili nella bash. Per scrivere il testo “Questo è un esempio”, digitate il seguente codice nel terminale:

$ echo Questo è un esempio
Questo è un esempio

Nel passaggio successivo vogliamo invece visualizzare una variabile. È sufficiente indicare il nome della variabile, ad esempio PWD (per Print Working Directory, o più semplicemente indicare la cartella di lavoro). Il comando appare così:

$ echo $PWD 
/Users/Name/Desktop

Dopodiché c’è anche la possibilità di combinare variabili e testo, come nell’esempio seguente:

$ echo "Vi trovate nella cartella: $PWD" 
Vi trovate nella cartella: /Users/Name/Desktop
N.B.

Per visualizzare le informazioni non c’è soltanto il comando della bash echo, ma anche printf e tput. Tra questi tput è uno strumento più complesso in quanto può essere usato per resettare le informazioni. Con printf ed echo invece le informazioni vengono soltanto visualizzate.

Quali caratteri di controllo esistono per echo?

Se avete capito il principio di funzionamento del comando Echo, potete ora passare ai caratteri di controllo che possono essere utilizzati in combinazione con il comando. Per caratteri di controllo si intendono quei caratteri che non vengono visualizzati sullo schermo ma parti di codice che servono a definire, per esempio, l’interruzione di riga.

Attenzione: echo comprende i caratteri di controllo soltanto se impostate l’opzione -e. Nell’esempio seguente deve essere visualizzato "\n", che solitamente serve a segnalare una nuova riga e quindi l’andare a capo.

$ echo "\n" 
\n

Se come nell’esempio successivo dovete andare effettivamente a capo, allora aggiungete -e:

$ echo -e "\n"
N.B.

Il comando Echo termina solitamente andando a capo. Per impedirlo potete aggiungere \c al termine del comando desiderato.

Di seguito una panoramica dei caratteri di controllo che avete a disposizione nella bash:

Caratteri Escape Significato
\a Tono di allarme
\b Indietro di un carattere
\c Impedire l’andare a capo
\f Indietro
\n Andare a capo
\r Tornare all’inizio della riga
\t Tabulazione (orizzontale)
\v Tabulazione (verticale)
\\ Visualizzazione della barra rovesciata (backlash)
\0nnn Caratteri ASCII in formato ottale (solo sh e ksk)
\nnn Caratteri ACSII in formato ottale (solo bash)

Come definire i colori per font e sfondo con il comando echo?

Con il comando Echo potete anche stabilire alcuni attributi di come deve essere visualizzato il testo, come i colori del font e dello sfondo. Per farlo dovete includere tutti i caratteri tra virgolette o scrivere direttamente i colori desiderati sotto forma di variabili, così da rendere leggibile la sequenza di caratteri. Un colore viene sempre introdotto da \033[. La prima opzione appare così (31m corrisponde al colore rosso):

$ echo -e "\033[31mQuesto testo è di colore rosso"

Per reimpostare il colore degli attributi successivi digitate la seguente stringa di caratteri:

$ echo -e "\033[0m"

Definendo invece i colori nel vostro script bash sotto forma di variabili, diventa tutto più facile da comprendere:

red='\033[31m'
reset='\033[0m'

Dopodiché potete riutilizzare lo stesso colore semplicemente con il comando Echo:

$ echo -e "${red}Questo testo è di colore rosso.${reset}E ora il testo è di nuovo del colore standard."

Nella seguente tabella trovate i caratteri escape per diversi colori, sia per il font che per lo sfondo.

Carattere di controllo Risultato
\033[30m Font nero
\033[31m Font rosso
\033[32m Font verde
\033[33m Font giallo
\033[34m Font blu
\033[35m Font magenta
\033[36m Font turchese
\033[37m Font bianco
\033[40m Sfondo nero
\033[41m Sfondo rosso
\033[42m Sfondo verde
\033[43m Sfondo giallo
\033[44m Sfondo blu
\033[45m Sfondo magenta
\033[46m Sfondo turchese
\033[47m Sfondo grigio

Come impostare le caratteristiche testuali con il comando echo?

Oltre ai colori di font e sfondo, con il comando Echo potete impostare anche alcuni attributi testuali come il grassetto o la sottolineatura. Di seguito trovate i caratteri di controllo corrispondenti a ciascuna caratteristica:

Carattere di controllo Risultato
\033[0m Reset di tutti gli attributi
\033[1m Grassetto
\033[4m Sottolineatura
\033[5m Evidenziato
\033[7m Visualizzazione inversa

Se desiderate visualizzare un testo di colore rosso in grassetto, il codice è il seguente:

$ echo -e "\033[1;31mQuesto testo è di colore rosso e in grassetto."
Consiglio

Abbiamo riassunto per voi una panoramica di tutti i comandi Linux più importanti.

Hai trovato questo articolo utile?
Per offrirti una migliore esperienza di navigazione online questo sito web usa dei cookie, propri e di terze parti. Continuando a navigare sul sito acconsenti all’utilizzo dei cookie. Scopri di più sull’uso dei cookie e sulla possibilità di modificarne le impostazioni o negare il consenso.
Page top