logo

Linux tee Komutu

Linux tee komutu, tek bir farkla 'cat' komutuna oldukça benzer. Stdin'i stdout'a koyar ve ayrıca bunları bir dosyaya koyar. Borulama yoluyla diğer komutlarla birlikte en çok kullanılan komutlardan biridir. Std girişinden std çıkışına kadar ne veriliyorsa onu yazmamızı sağlar. İsteğe bağlı olarak bir veya birden fazla dosyaya yazma olanağı sağlar. Komut adı tee, tesisatta kullanılan T ayırıcıdan gelir.

Sözdizimi:

 tee 

Seçenekler:

Tee komutunu daha spesifik hale getirmek için kullanılabilecek bazı yararlı seçenekler aşağıda verilmiştir:

-a, --append: Verileri verilen dosyalara eklemek için kullanılır, verilerin üzerine yazmaz.

-i, --ignore-interrupts: Kesme sinyallerini yok saymak için kullanılır.

-P: Boru olmayanlara yazılan hataları teşhis etmek için kullanılır.

--output-error[=MOD]: Yazma hatası modundaki davranışı ayarlamak için kullanılır.

--yardım: Yardım belgelerini görüntülemek için kullanılır.

rsa için algoritma

--versiyon: Sürüm bilgisini görüntülemek için kullanılır.

tee Komutu örnekleri

tee komutunun aşağıdaki örneklerini görelim:

tamsayılara dize

Tee komutu nasıl kullanılır?

tee komutu standart bir girdiyi standart çıktıya ve bir dosyaya yazmak için kullanılır. Borudan sonra kullanılır. Standart çıktıya ve bir dosyaya yazmak için, borudan sonra tee komutunu belirtin ve dosya(lar)ın adını belirtin. Aşağıdaki komutu göz önünde bulundurun:

 cat weeks.txt | tee newfile.txt 

Yukarıdaki komut 'weeks.txt' girdisini 'newfile.txt' dosyasına yazacaktır. Aşağıdaki çıktıyı göz önünde bulundurun:

Linux tee Filtreler

Yukarıdaki çıktıdan, tee komutu kullanılarak bir 'newfile.txt' dosyası oluşturulur.

Bir dosya yazın ve çıktıyı ekleyin

'-a' seçeneği, çıktıyı eklemek ve bir dosyaya yazmak için tee komutuyla birlikte kullanılır. Aşağıdaki komutu göz önünde bulundurun:

 echo 'Saturday and Sunday are week offs' | tee -a newfile.txt 

Yukarıdaki komut belirtilen girişi 'newfile.txt' dosyasına ekleyecektir. Aşağıdaki çıktıyı göz önünde bulundurun:

Linux tee Filtreler

Yukarıdaki çıktıdan itibaren belirtilen girdi 'yenidosya.txt' dosyasına eklenir.

Verinin Durumunu Dosyaya Yazma

Verinin durumunu yazmak, yedekleme almak veya hata ayıklama amacıyla verilerin bir anlık görüntüsünü oluşturmak için çok kullanışlıdır. tee komutu kullanılarak kolaylıkla yapılabilir.

Verinin durumunu bir dosyaya yazmak için aşağıdaki komutu yürütün:

 ls ~/ | tee pipe1.txt | grep ^b | tee pipe2.txt | sort -r 

Yukarıdaki komut verileri pipe1.txt dosyasına yazacaktır. Aşağıdaki çıktıyı göz önünde bulundurun:

Linux tee Filtreler

Yukarıdaki çıktıdan, geçerli çalışma dizini verilerinin anlık görüntüsü 'yenidosya.txt' dosyasında depolanır.

Birden fazla dosyaya yaz

tee komutu birden fazla dosyaya yazmamızı sağlar. Birden fazla dosyaya yazmak için tee komutundan sonra dosyaların adlarını aşağıdaki gibi belirtin:

 echo ' add text' | tee file1.txt file2.txt file3.txt 

Yukarıdaki komut belirtilen tüm dosyaları oluşturacaktır. Aşağıdaki çıktıyı göz önünde bulundurun:

Linux tee Filtreler

Ayrıcalıklı bir dosyaya yaz

tee komutu sudo ayrıcalığına sahip bir dosyaya yazmamızı sağlar. Kök kullanıcıya ait bir dosyayı yazmaya çalışırsak izin hatasıyla karşılaşacağız. Ancak tee komutunu aşağıdaki gibi çalıştırarak sudo iznini yükseltebiliriz:

disket
 echo 'some text' | sudo tee -a 

Kesintileri Göz Ardı Etme

'-i' seçeneği kesintileri yok saymak için kullanılır. Yürütme sırasında komutu düzgün bir şekilde durdurup çıkmak istiyorsak bu kullanışlıdır. Aşağıdaki şekilde kullanılır:

 command | tee -i 

Çıktıyı gizle

tee komutunu standart çıktıya yazmayacak şekilde kısıtlamak için onu '/dev/null' konumuna yönlendirin. Komutu aşağıdaki gibi yürütün:

 echo 'Text' | tee newfile.txt >/dev/null 

Aşağıdaki çıktıyı göz önünde bulundurun:

Linux tee Filtreler