[Çözüldü] Terminalde | karakteri ne anlama geliyor?

Başlatan hefese, 05 Aralık 2015 - 09:54:05

« önceki - sonraki »

0 Üyeler ve 2 Ziyaretçi konuyu incelemekte.

hefese

Merhaba, sitenin birinde adamın terminal için | karakterini kullandığını gördüm. Ne anlama geliyor diye bir kendim deneyeyim dedim ve terminale şunları yazdım:

ping www.google.com | ping www.onedio.com

Fark ettim ki terminal google'a ping atmadan onedio'ya ping atma girişiminde bulundu. Fakat nedir yani bu? Ne amaçla kullanılıyor? Açıklayabilecek olan var mı?

oasln

| pipe(7) yani "boru" iki process arasında bir iletişim kanalı açmaya yarar. Verdiğin örnek pek bir işe yaramıyor, çünkü ping bi yerden bir dosya okumuyor. Örneğin şöyle bir şey yapsaydın:

ping ftp.tr.debian.org | sed -rn 's/^.*time=(.*?) .*$/\1/p'

Bu komut pipe kullanarak ping çıktısını sed'e iletmeye yarıyor. sed varsayılan olarak dosyayı stdin'den okuduğundan sen ping'in stdout çıktısını sed'in stdin girdisine yönlendirmiş oluyorsun.
--

hefese

Açıklayıcı bilgi için teşekkürler.