GNU/Linux >> Znalost Linux >  >> Linux

Výukový program Linux Tee Command s příklady pro začátečníky

Při práci s terminálem v Linuxu je k dispozici mnoho nástrojů příkazového řádku, které vám usnadní život. Jedním z takových nástrojů je Tee . V tomto stručném průvodci se na praktických příkladech naučíme, co je Tee a jak se používá příkaz Tee v Linuxu.

Úvod do příkazu Tee

Odpaliště je jednoduchý nástroj příkazového řádku, který přijímá vstup a zapisuje výstup do souboru a standardní výstup (tj. terminál). Příkaz Tee se většinou používá ve skriptech shellu, když chcete přesměrovat výstup do více souborů a dále zpracovávat výstup.

Příkaz Tee je součástí GNU coreutils , takže je dodáván předinstalovaný se všemi distribucemi Linuxu.

Chcete-li zkontrolovat, zda je příkaz tee dostupný ve vaší distribuci Linuxu, spusťte následující příkaz:

$ which tee
/usr/bin/tee

Chcete-li zkontrolovat verzi trička, můžete použít --version vlajka.

$ tee --version
tee (GNU coreutils) 8.32

Zobrazit nápovědu k příkazu tee

Pokud jste nikdy nepoužili příkaz tee, je dobrým zvykem začít sekcí nápovědy k příkazu tee.

Chcete-li se o tomto nástroji dozvědět více, můžete přejít na stránku manuálu pro příkaz tee.

$ man tee

Můžete také předat --help příkaz argument to tee pro zobrazení manuálu nápovědy.

$ tee --help

Syntaxe příkazu Tee

Typická syntaxe příkazu Tee je uvedena níže:

tričko [MOŽNOST]… [SOUBOR]…

Přijímá příznaky a název souboru, kam bude výstup přesměrován.

Existují dva důležité příznaky, které budete většinou používat s příkazem tee.

  • -a , --append flag :Připojit k souborům.
  • -i , -ignore-interrupts příznak :Ignorovat signály přerušení.

Nyní mi dovolte, abych vám ukázal několik příkladů příkazu tee v Linuxu.

Příklady příkazů Linux Tee pro začátečníky

Jak již bylo řečeno, příkaz tee přijme vstup a vytiskne výstup na terminál, stejně jako soubor, který je předán jako argument.

V níže uvedeném příkladu příkaz tee přebírá vstup z echo a vytiskne výstup do terminálu i do hello.txt soubor.

$ echo "Welcome to OSTechNix" | tee hello.txt
Welcome to OSTechNix

Pojďme zkontrolovat obsah hello.txt soubor:

$ cat hello.txt 
Welcome to OSTechNix

Použijte příkaz tee s operátorem Pipe

Příkaz Tee není jen k vytištění standardního vstupu do terminálu a také k jeho přenosu do jiného programu pro další zpracování.

Většinou se příkaz tee bude používat v kombinaci s pipe (|) operátor ve skriptech shellu.

Podívejte se na níže uvedený příklad.

$ echo "Hello world" | tee hello.txt | rev
dlrow olleH
$ cat hello.txt
Hello world

Dovolte mi vysvětlit, co se stane, když spustíte výše uvedený příkaz.

  • echo příkaz odešle svůj výstup "Hello World" jako vstup do tee příkaz přes potrubí.
  • Tee příkaz uloží výstup do daného souboru hello.txt .
  • Namísto tisku výstupu na terminál, což je výchozí chování, tee příkaz pass "Hello World" řetězec jako vstup do rev příkaz, který vytiskne řetězec v opačném pořadí .

Zde je další příklad.

Následující příkaz vytvoří adresář s názvem "ostechnix", spočítá počet znaků v "ostechnix" a vytiskne "ostechnix" do terminálu:

$ echo "ostechnix" | tee >(xargs mkdir) >(wc -c)

Pozor: Možná budete muset použít sudo s tee Pokud vytváříte soubory v adresářích, ke kterým nemáte přístup jako běžný uživatel.

Předání více souborů

Příkaz Tee také přijímá více souborů jako argumenty a ukládá výstup do každého souboru.

$ echo "Welcome to OSTechNix" | tee hello1.txt hello2.txt hello3.txt
Welcome to OSTechNix

Pojďme zkontrolovat obsah každého souboru:

$ cat hello1.txt
Welcome to OSTechNix
$ cat hello2.txt
Welcome to OSTechNix
$ cat hello3.txt
Welcome to OSTechNix

Přepsat versus přidat

Výchozí chování tee příkaz je, že vyhledá, zda je soubor již dostupný, a přepíše data novým. Pokud soubor není k dispozici, vytvoří se.

Pokud chcete data místo přepsání připojit, použijte -a nebo --append vlajka.

$ cat hello1.txt
Welcome to OSTechNix
$ echo "I am using PoP_OS Cosmic Desktop" | tee -a hello1.txt
I am using PoP_OS Cosmic Desktop
$ cat hello1.txt
Welcome to OSTechNix
I am using PoP_OS Cosmic Desktop

Kombinace Tee s operátorem Redirection

Pokud si nepřejete tisknout výstup na terminál, ale pouze zapisovat výstup do souborů, můžete pak kombinovat operátor přesměrování s příkazem tee.

Toto je ideální případ pouze v případě, že příkaz tee přichází na řadu jako poslední. Je-li výstup T přesouván do jiného příkazu, jako je as
v prvním příkladu není potřeba používat operátor přesměrování.

$ echo "I am using PoP_OS Cosmic Desktop" | tee -a hello1.txt &> /dev/null

Signály přerušení

Příkaz Tee má možnost přerušit SIGINT pomocí -i nebo --ignore-interrupts vlajka.

Význam - pokud stisknete CTRL + C ve vašem terminálu, zatímco spouštíte příkaz tee s -i flag, příkaz tee přeruší signál a provede elegantní odchod načtením EOF z PIPE.

$ { echo Hello world;sleep 10; } | tee -i hello1.txt
Hello world
^C
$ cat hello1.txt
Hello world

Shrnutí

Tee je jednoduchý program, který nemusíte používat denně. Znalost příkazu tee se vám však bude hodit při psaní shellových skriptů. Doufám, že to pomůže.


Linux
  1. Rozšíření Linuxu Command Tutorial pro začátečníky (s příklady)

  2. Výukový program pro Linux tac Command pro začátečníky (s příklady)

  3. Uživatelé Linuxu Výukový program příkazů pro začátečníky (s příklady)

  1. Výukový program příkazů Linux factor pro začátečníky (s příklady)

  2. Výukový program příkazu Linux sum pro začátečníky (s příklady)

  3. Výukový program příkazu spánku pro Linux pro začátečníky (s příklady)

  1. Linux ano Příkazový kurz pro začátečníky (s příklady)

  2. Linux nproc Command Tutorial pro začátečníky (s příklady)

  3. Výukový program příkazů se základním názvem Linuxu pro začátečníky (s příklady)