Příkaz tee načte standardní vstup, odešle výstup do výchozího výstupního zařízení (CLI) a také zkopíruje výstup do každého zadaného souboru. Tento příkaz vám umožňuje okamžitě ověřit výstup příkazu a také uložit tento výstup do souboru pro pozdější použití. Stejně jako xargs, tee obvykle přijímá vstup z jiného příkazu pomocí operátoru roura.
Při použití s volbou -a tee připojí výstup ke každému výstupnímu souboru namísto jeho přepsání.
Syntaxe
Obecná syntaxe příkazu tee je:
# command [options] [arguments] | tee [options] {file names}
Řekněme, že chcete zkontrolovat obsah adresáře a také vydat tento obsah do souboru ke zpracování později. K tomu můžete zadat samostatné příkazy nebo můžete použít příkaz tee takto:
# ls -l | tee listing.txt
Pokud při spouštění příkazu tee narazíte na níže uvedenou chybu:
tee: command not found
můžete zkusit nainstalovat níže uvedený balíček podle vaší volby distribuce:
Distribuce | Příkaz |
---|---|
OS X | brew install coreutils |
Debian | apt-get install coreutils |
Ubuntu | apt-get install coreutils |
Alpine | apk add coreutils |
Arch Linux | pacman -S coreutils |
Kali Linux | apt-get install coreutils |
CentOS | yum install coreutils |
Fedora | dnf install coreutils |
Raspbian | apt-get install coreutils |
Příklady příkazů tee
1. Zkopírujte standardní vstup do každého souboru a také do standardního výstupu:
# echo "example" | tee path/to/file
2. Připojte k daným souborům, nepřepisujte:
# echo "example" | tee -a path/to/file
3. Vytiskněte standardní vstup do terminálu a také jej přeneste do jiného programu pro další zpracování:
# echo "example" | tee /dev/tty | xargs printf "[%s]"
4. Vytvořte adresář s názvem „example“, spočítejte počet znaků v „example“ a napište „example“ do terminálu:
# echo "example" | tee >(xargs mkdir) >(wc -c)