Bralci, kot ste vi, pomagajo podpirati MUO. Ko opravite nakup prek povezav na našem spletnem mestu, lahko zaslužimo partnersko provizijo. Preberi več.

Linux vam omogoča shranjevanje izhodnih podatkov ukaza v datoteke kot sredstvo za preusmeritev izhodnih podatkov. Ko shranite izhod v datoteko z uporabo > oz >> operaterji, se izhod preusmeri brez informacij, prikazanih na terminalu.

Kaj pa, če želite izpis natisniti na zaslon in ga hkrati shraniti v datoteko? Čeprav tega ne morete storiti z operaterji za preusmeritev izhoda, je to mogoče storiti z ukazom tee v Linuxu.

Osnovna sintaksa ukazov

tee je standardni pripomoček za Linux, ki se uporablja za razdelitev izhoda ukaza med standardni izhod in datoteke.

Za razliko od večine ukazov Linux se tee uporablja z drugimi programi z uporabo cevi (|). Cevni operater - eden od številni operaterji ukazne vrstice v Linuxu—omogoča, da program kot vhod uporabi izhod drugega ukaza. Morda ste uporabili pipe, medtem ko ste zraven uporabljali grep ukaz ls ali mačka.

instagram viewer

Osnovna sintaksa ukaza tee je:

ukaz | tee options filepath

...kje opcije in pot do datoteke so argumenti ukazne vrstice in pot do datoteke, v katero želite shraniti izhod.

Razdeljen terminalski izhod na Linuxu s tee

Najenostavnejša uporaba tee je razdelitev izhoda za prikaz v terminalu in shranjevanje v datoteko. Na primer, da shranite izhod ukaza ls v besedilno datoteko z imenom "izhod.txt," zaženi:

ls | tee ./output.txt

Izhod bo kot običajno prikazal vsebino trenutnega delovnega imenika. Ko preverite datoteko output.txt, boste ugotovili, da je tee v datoteko shranil tudi izhod.

Ko določite pot do datoteke, tee preveri, ali datoteka obstaja. Če je ne najde, samodejno ustvari datoteko za vas, zaradi česar je priročna za uporabo v lupinskih skriptih. Uporabno je, če želite zabeležiti izhod programa ali skripta za kasnejšo uporabo.

Za branje ali shranjevanje podatkov v datoteko, ki je v lasti uporabnika root, boste morali pred ukazom tee navesti sudo.

Če ima določena datoteka shranjene podatke, ki jih ne želite prepisati, uporabite -a označi za priložiti izhod v datoteko, namesto da počistite celotno datoteko in nato shranite podatke:

ls | tee -a ./output.txt

Podobno lahko preusmerite izhod v več datotek tako, da navedete poti, ločene z enimi presledki:

ls | tee ./output1.txt ./output2.txt

Včasih se pojavijo nepričakovane napake ali ročne prekinitve (z uporabo Ctrl + C oz Ctrl + Z) v prejšnjem ukazu lahko povzroči, da tee preneha. Če želite prezreti takšne prekinitve, uporabite -jaz zastava:

ls | tee -i izhod.txt

Za dobite pomoč v ukazni vrstici glede tee ali poiščite podrobnosti o različici, uporabite -- pomoč in --različica zastave, kot sledi:

tee --pomoč
tee --različica

Preusmerjanje izhoda na drug ukaz

Izhodno verigo lahko ustvarite tako, da povežete tee z drugimi ukazi Linuxa. S tem boste izhod shranili v navedeno datoteko in ga nato posredovali naslednjemu ukazu za obdelavo.

Uporabite naslednjo obliko za preusmeritev izhoda tee na drug ukaz:

ukaz | tee filepath | drug ukaz

Naslednji ukaz bo na primer shranil izhod ukaza ls v izhod.txt preden ga končno preusmerite na grep za hitro iskanje:

ls | tee output.txt | grep "Dokumenti"

Na splošno lahko uporabite ukaz tee za igranje standardni vhod in izhod v Linuxu.

Manipulacija izpisa in besedila z ukazi Linuxa

Ukaz tee dodaja prepotrebno funkcionalnost standardnim operaterjem preusmeritve izhoda v Linuxu. Uporabite ga lahko celo za manipulacijo izhoda ukaza, preden ga posredujete drugemu programu.

Podobno lahko spremenite besedilo z uporabo terminala s pomočjo nekaterih standardnih ukazov Linuxa. Morda bo trajalo nekaj časa, da se nanje navadijo, vendar se je na koncu vredno naučiti vsakega sistemskega skrbnika manipulirati z besedilom prek ukazne vrstice.