Linux tee naredba prilično je slična naredbi 'cat', samo s jednom razlikom. Stavlja stdin na stdout i također ih stavlja u datoteku. To je jedna od najčešće korištenih naredbi s drugim naredbama kroz cjevovod. Omogućuje nam da napišemo sve što je dano od std ulaza do std izlaza. Po izboru, omogućuje pisanje u jednu ili više datoteka. Naziv naredbe tee dolazi od T razdjelnika koji se koristi u vodovodu.
Sintaksa:
tee
Mogućnosti:
Slijedi nekoliko korisnih opcija koje se mogu koristiti s naredbom tee kako bi bila specifičnija:
-a, --dodaj: Koristi se za dodavanje podataka zadanim datotekama, ne prepisuje podatke.
inurl:.git/head
-i, --ignore-prekidi: Koristi se za ignoriranje signala prekida.
-p: Koristi se za dijagnosticiranje pogrešaka pisanja u ne-cijeve.
--output-error[=MODE]: Koristi se za postavljanje ponašanja u načinu rada pogreške pisanja.
--Pomozite: Koristi se za prikaz dokumentacije pomoći.
--verzija: koristi se za prikaz informacija o verziji.
Primjeri naredbe tee
Pogledajmo sljedeće primjere naredbe tee:
- Kako koristiti naredbu tee
- Napišite datoteku i dodajte izlaz
- Zapišite stanje podataka u datoteku
- Pišite u više datoteka
- Pišite u privilegiranu datoteku
- Ignoriranje prekida
- Sakrij izlaz
Kako koristiti naredbu tee
Naredba tee koristi se za pisanje standardnog ulaza u standardni izlaz i datoteku. Koristi se nakon lule. Za pisanje u standardni izlaz i datoteku, navedite naredbu tee iza cijevi i navedite naziv datoteke(a). Razmotrite naredbu u nastavku:
cat weeks.txt | tee newfile.txt
Gornja naredba upisat će unos 'weeks.txt' u 'newfile.txt'. Razmotrite donji izlaz:
Iz gornjeg izlaza stvara se datoteka 'newfile.txt' pomoću naredbe tee.
Napišite datoteku i dodajte izlaz
Opcija '-a' koristi se s naredbom tee za dodavanje izlaza i njegovo pisanje u datoteku. Razmotrite naredbu u nastavku:
echo 'Saturday and Sunday are week offs' | tee -a newfile.txt
Gornja naredba će dodati navedeni unos u 'newfile.txt'. Razmotrite donji izlaz:
Kao iz gornjeg izlaza, navedeni unos se dodaje u 'newfile.txt'.
Zapišite stanje podataka u datoteku
Zapisivanje stanja podataka vrlo je korisno za izradu sigurnosne kopije ili stvaranje snimke podataka u svrhu otklanjanja pogrešaka. To se lako može učiniti pomoću naredbe tee.
Da biste upisali stanje podataka u datoteku, izvršite naredbu u nastavku:
ls ~/ | tee pipe1.txt | grep ^b | tee pipe2.txt | sort -r
Gornja naredba će zapisati podatke u pipe1.txt. Razmotrite donji izlaz:
Iz gornjeg izlaza, snimka podataka trenutnog radnog direktorija pohranjuje se u 'newfile.txt'.
Pišite u više datoteka
Naredba tee nam omogućuje pisanje u više datoteka. Za pisanje u više datoteka, navedite nazive datoteka nakon naredbe tee kako slijedi:
echo ' add text' | tee file1.txt file2.txt file3.txt
Gornja naredba će stvoriti sve navedene datoteke. Razmotrite donji izlaz:
fcfs
Pišite u privilegiranu datoteku
Naredba tee omogućuje nam pisanje u datoteku koja ima sudo privilegiju. Ako pokušamo napisati datoteku u vlasništvu root korisnika će kroz grešku dozvole. Ali, možemo podići dopuštenje za sudo izvršavanjem naredbe tee na sljedeći način:
echo 'some text' | sudo tee -a
Ignoriranje prekida
Opcija '-i' koristi se za ignoriranje prekida. Ovo je korisno ako želimo zaustaviti i elegantno izaći iz naredbe tijekom izvođenja. Koristi se na sljedeći način:
command | tee -i
Sakrij izlaz
Da ograničite naredbu tee da ne piše na standardni izlaz, preusmjerite je na '/dev/null'. Izvršite naredbu na sljedeći način:
echo 'Text' | tee newfile.txt >/dev/null
Razmotrite donji izlaz: