Příkaz echo je možná jedním z prvních příkazů, které uvidíte, když se začnete učit příkazy Linuxu nebo skriptování v bash shellu.
Echo je jednoduchý příkaz, který jednoduše vypíše své argumenty na displej.
[email protected]:~$ echo Hello World
Hello World
Můžete hádat, proč se tento příkaz nazývá „echo“. Stejně jako zvuková ozvěna příkaz také jednoduše vytiskne, co obdrží na vstupu.
Příklady příkazu echo v Linuxu
Echo se často používá ve skriptech shellu k zobrazení informací, jako je požadavek na uživatele, aby poskytl vstup nebo zobrazení chyby nebo varování pro určitou akci ve skriptu.
Příkaz echo má jednoduchou syntaxi s několika možnostmi:
echo [options] [input string]
Podívejme se na několik příkladů příkazu echo.
1. Zobrazení hodnoty proměnné
Řekněme, že jste deklarovali proměnnou var =100. Hodnotu této proměnné můžete zobrazit pomocí příkazu echo:
echo The value of variable var is $var
Jeho výstup by se zobrazil takto:
The value of variable var is 100
2. Netiskněte poslední znak nového řádku
Ve výchozím nastavení výstup příkazu echo přidá na výstup nový řádek, takže výstup zobrazíte na jednom celém řádku.
[email protected]:~$ echo Hello World
Hello World
Tento znak nového řádku můžete potlačit pomocí volby -n:
[email protected]:~$ echo -n Hello World
Hello [email protected]:~$
3. Přesměrujte výstup do souboru
Příkaz echo můžete použít k vytvoření nového souboru v Linuxu nebo k připojení nového textu k existujícímu souboru přesměrováním výstupu do souboru:
echo "This text goes to a file" >> file.txt
3. Použití escape znaků s příkazem echo
Volba -e s echo umožňuje interpretovat znaky escape. Pomocí znaků escape můžete svůj text zobrazit na obrazovce jiným způsobem, který si vyberete.
S escape jsou k dispozici následující znaky escape:
- \a – upozornění (přehraje pípnutí)
- \b – backspace
- \c – netisknout poslední nový řádek (stejné jako volba -n)
- \f – ze zdroje
- \n – nový řádek
- \r – návrat vozíku
- \t – horizontální tabulátor
- \v – svislá karta
- \\ – zpětné lomítko
- \’ – jednoduchá uvozovka
- \” – dvojité uvozovky
Zatímco volba -e žádá příkaz echo, aby interpretoval znaky escape, volba -E dělá opak a ignoruje znaky escape.
Nyní se podívejme, jak používat některé z těchto znaků escape s příkazem echo.
echo -e "An eye for an eye leaves the whole world blind\n\t- Gandhi"
Dokážete odhadnout, jaký by byl výstup výše uvedeného příkazu? Tady to je:
An eye for an eye leaves the whole world blind
– Gandhi
Podívejme se na některé další příklady únikových postav. Znak pro návrat vozíku vytiskne pouze text za tímto znakem.
[email protected]:~$ echo -e “Hello\rWorld”
World
Pokud použijete znak backspace, odstraní se jeden znak před ním:
[email protected]:~$ echo -e “Hello \bWorld”
HelloWorld
S ostatními únikovými postavami můžete hrát podobným způsobem.
4. Zobrazte text s jednoduchými nebo dvojitými uvozovkami pomocí příkazu echo
Práce s jednoduchými a dvojitými uvozovkami je často bolest hlavy.
Pokud máte v textu, který chcete zobrazit, jedinou uvozovku, měli byste celý vstup zalomit do dvojitých uvozovek:
[email protected]:~$ echo “It’s My World”
It’s My World
Pokud chcete zobrazit dvojité uvozovky, musíte je ‚uniknout‘:
[email protected]:~$ echo “It’s \”My\” World”
It’s “My” World
5. Zobrazit soubory v adresáři
K zobrazení souborů v adresáři pravděpodobně používáte příkaz ls. K tomuto účelu můžete také použít příkaz echo.
Chcete-li zobrazit obsah aktuálního adresáře, můžete použít tento příkaz:
echo *
Můžete také použít příkaz echo k zobrazení pouze určitého typu souborů:
echo *.txt
Pokud chcete vypsat pouze adresáře, použijte to takto:
echo */
6. Použijte příkaz echo k vyprázdnění souboru v Linux
Tento tip na vyprázdnění souborů protokolu v Linuxu jsem již ukázal. Pokud máte textový soubor a chcete vymazat jeho obsah, aniž byste smazali samotný soubor, můžete použít příkaz echo následujícím způsobem:
echo > filename
Bonusový tip:Zobrazte výstup příkazu echo barevně
Pravděpodobně byste narazili na nějaký bash skript, který zobrazuje textový výstup v jiné barvě. Přemýšleli jste někdy, jak se to dělá? Dovolte mi, abych vám rychle ukázal, jak změnit barvu výstupu echa.
Můžete použít sekvenci escape ANSI a změnit vzhled výstupu, jako je barva pozadí, podtržítko, tučné písmo atd.
Chcete-li změnit barvu výstupního textu, můžete použít tyto:
echo -e “\033[30mThis is Black”
echo -e “\033[31mThis is Red”
echo -e “\033[32mToto je zelené”
echo -e “\033[33mToto je žluté”
echo -e “\033[34mToto je modré”
echo -e “\033[35mToto je purpurová”
echo -e “\033[36mToto je azurová”
echo -e “\033[37mToto je bílé”
Ukázka barevného výstupu pro pochopení:
\033[ představuje ESC[ ve výše uvedených příkazech.
No, to je vše. Myslím, že jste viděli spoustu příkladů příkazu echo v Linuxu. Pokud používáte echo pro nějaký konkrétní účel, který by mohl být užitečný pro ostatní, podělte se o něj s námi v sekci komentářů.