Komut çıktısını bir dosyaya nasıl kaydederim?

Çekirdeğin > <file> işleçini kullanın: varsayılan davranış sona eklemektir; -r hedef dosyayı değiştirir.

Varsayılan olarak sona ekleme

dns google.com > save.log DNS sonucunu terminalde göstermeye devam eder ve aynı metinsel çıktıyı lil-terminal’in geçerli dizinindeki save.log dosyasının sonuna ekler. Sonucun ardından çözümlenmiş hedef yol gösterilir. Komut yeniden çalıştırıldığında önceki veriler silinmez; yeni sonuç sona eklenir.

Değiştirme veya eklemeyi açıkça seçme

Dosyayı değiştirmek için hedeften sonra -r kullanın: dns gmail.com > save.log -r. -a, zaten varsayılan olan sona ekleme kipini açıkça seçer. Boşluk içeren yollar tırnak içine alınmalıdır. İşleç çekirdekte işlendiği için modüllerin yalnızca görüntüledikleri sonucu saklamak amacıyla ayrı dışa aktarma seçenekleri eklemesine gerek yoktur.

Hangi sonuçlar yönlendirilebilir

Yalnızca normal metin olarak temsil edilebilen sonuçlar dosyaya yazılır. Etkileşimli düzenleyiciler, gizli bilgi istemleri, indirmeler ve tarayıcı kontrol olayları dosyaya dönüştürülmez. Bir komut kendi sözdiziminde zaten > kullanıyorsa bu anlam korunur; yönlendirme, sondaki çıktı işleci olarak tanınır.

Son sonucu yeniden kullanma

history -o, geçerli PHP oturumunda tutulan son yönlendirilebilir metin sonucunu döndürür. history -o > history.log sona ekleyerek kaydeder; history -o > history.log -r dosyayı değiştirir. Masaüstündeki Ctrl/Command+S kısayolları da aynı komutları çalıştırır.

Değerler neden iki nokta ile yazılır

Güncel dilbilgisinde > yalnızca çekirdeğin çıktı yönlendirme işleci olarak kullanılır. Değer alan komutlar : kullanır: ini app.ini -w key : value, json app.json -w path : value, ses path : value, attr file key : value ve db : SELECT .... Böylece belirsizlik ortadan kalkar ve command ... > file her yerde aynı anlama gelir. Eski bir modül sürümü kuruluysa çekirdek bunu algılar ve yanlış veriyi sessizce yönlendirmek yerine geçiş mesajı gösterir.

Örnekler

dns google.com > save.log
dns gmail.com > save.log -r
env > "logs/env current.log" -a
history -o > history.log
history -o > history.log -r

İlgili belgeler

← SSS’ye dön