«pipe» etiketlenmiş sorular

Bir Unix borusu, iki işlemin dosya tanımlayıcılarını bağlar. <Unistd.h> içinde bildirilen POSIX pipe () işlevi ile bir boru oluşturulur. Kabuklar, "|" kullanarak işlemler arasında boru oluşturma sağlar.

3
Bir arşiv nasıl indirilir ve arşiv diske kaydedilmeden nasıl çıkartılır?
Belirli bir dizinin altındaki bir arşivi indirmek ve çıkartmak istiyorum. İşte şimdiye kadar nasıl yapıyorum: wget http://downloads.mysql.com/source/dbt2-0.37.50.3.tar.gz tar zxf dbt2-0.37.50.3.tar.gz mv dbt2-0.37.50.3 dbt2 Ben arşiv indirmek ve ayıklamak için yerine istediğiniz anında kalmadan tar.gzdiske yazılır. Bu çıktısının ile mümkün olduğunu düşünüyorum wgetetmek tarve vermek tarbir hedef, ama pratikte ben parçaları …
62 shell  pipe  tar  wget 

4
Adlandırılmış kanalın adsız kanal yerine kullanılmasının avantajları nelerdir?
Bir unix yöneticisinden sorulan bir dizi görüşme sorusunu gözden geçiriyordum; "Adlandırılmış yöneltme" adında bir konu buldum. Ben konu googled; bir dereceye kadar anlayabildim: - adlandırılmış borular || FIFO Ancak yine de, bu özel boru tipinin ne zaman kullanılacağı konusunda bilgi sahibi olmadığımı hissediyorum. Adsız boruların çalışamayacağı özel durumlar var mı?
51 pipe 

5
Mknod komutu ne için kullanılır?
Ubuntu'yu ana işletim sistemim olarak kullanmaya başladım ve yapmamam gereken şeyleri öğrenmek ve geçmişte insanların yaptığı kötü şeyleri öğrenmek istedim. UNIX ve Linux sys yöneticilerinin yenilerken kendi sistemlerinde yaptıkları korku hikayeleri hakkında bu e-postaya rastladım . Birçoğu, bir problemi hem distory etmek hem de çözmek için mknod komutunun kullanılmasını içeriyordu. …

4
Gereksiz kedileri umursamalı mıyım?
Bir çok komut satırı yardımcı programı girişlerini bir borudan veya dosya adı argümanı olarak alabilir. Uzun kabuk betikleri için cat, özellikle ilk komutun çok satırlı argümanlara gereksinim duyması durumunda, zinciri başlatmayı daha okunaklı hale getirir buluyorum . Karşılaştırmak sed s/bla/blaha/ data \ | grep blah \ | grep -n babla …

3
İzleme komutunu komutlu bir komut / program zinciri ile birlikte kullanma
Genellikle watchher n saniyede bir komutun çıktısını izlemek için linux yardımcı programını kullanıyorum,watch df -h /some_volume/ Ancak aşağıdaki gibi watchbir dizi komutla kullanamıyorum : $ watch ls -ltr|tail -n 1 Bunu yaparsam watch, gerçekten izliyor ls -ltrve tail -n 1hiçbir şey çıkmayan çıktı iletiliyor. Bunu denersem: $ watch (ls -ltr|tail …
50 linux  bash  pipe  watch 

2
Bash: Bir komutun çıktısından bir kerede bir satır nasıl okunur?
A komutunu kullanarak bash komutunun çıktısını okumaya çalışıyorum while loop. while read -r line do echo "$line" done &lt;&lt;&lt; $(find . -type f) Çıktı aldım ranveer@ranveer:~/tmp$ bash test.sh ./test.py ./test1.py ./out1 ./test.sh ./out ./out2 ./hello ranveer@ranveer:~/tmp$ Bundan sonra denedim $(find . -type f) | while read -r line do echo …
49 bash  shell  find  pipe 

10
Bir borunun boş olup olmadığı nasıl kontrol edilir ve değilse veriler üzerinde bir komut çalıştırılır mı?
Bir bash betiğine bir çizgi çizdim ve bir programa beslemeden önce borunun veri olup olmadığını kontrol etmek istiyorum. Arama yaptığım test -t 0ancak burada çalışmıyor. Her zaman yanlış döndürür. Borunun verileri olduğundan nasıl emin olunur? Örnek: echo "string" | [ -t 0 ] &amp;&amp; echo "empty" || echo "fill" Çıktı: …
42 bash  shell  pipe 

2
Neden işlem değişikliği / pip / dev / fd / 63 adlı bir dosyayla sonuçlanır?
Bu belirli örnek bağlamında adlandırılmış yöneltmeler anlamaya çalışıyorum. Yazarken &lt;(ls -l), benim terminalde gibi çıktı almak bash: /dev/fd/63: Permission denied. Eğer cat &lt;(ls -l)yazarsam, dizin içeriğini görebilirdim. Ben değiştirirseniz catile echo, ben terminali adını almak düşünüyorum (ya öyle?). echo &lt;(ls -l)çıktıyı olarak verir /dev/fd/63. Ayrıca, bu örnek çıktı bana açık …

7
Koşullu boru hattı
Diyelim ki aşağıdaki boru hattım var: cmd1 &lt; input.txt |\ cmd2 |\ cmd4 |\ cmd5 |\ cmd6 |\ (...) |\ cmdN &gt; result.txt Bazı şartlar altında ve cmd3arasına eklemek istiyorum . Cmd2 sonucunu geçici bir dosyaya kaydetmeden bir koşullu boru hattı oluşturmanın bir yolu var mı? Gibi bir şey düşünürdüm:cmd2cmd4 …
39 pipe 

3
Borulu xargs sonrası pipo komutları
HP-UX ***** B.11.23 Kullanıcı Kılavuzu i643 sınırsız kullanıcı lisansı find . -type d -name *log* | xargs ls -la bana dizin isimlerini (dizin ismini içerenler log) ve ardından bu dizin içindeki tüm dosyaları verir. Dizinleri /var/opt/SID/application_a/log/, /var/opt/SID/application_b/log/, /var/opt/SID/application_c/log/ve benzeri günlük dosyalarını içerir. Yalnızca en son iki günlük dosyasının lsgenellikle kullandığım …
38 shell  find  pipe  xargs 

6
Çıktısının bir terminale gittiğini düşünerek bir komutu nasıl kandırabilirim?
Çıkışı bir terminale giderken davranışını değiştiren bir komut verildiğinde (örneğin, renkli çıktı üretir), bu davranış değiştirilen davranışı koruyarak bir boru hattında nasıl yönlendirilebilir? Bunun için bilmediğim bir yardımcı program olmalı. Bazı komutların, grep --color=alwaysdavranışı zorlamak için seçenek bayrakları vardır, ancak soru, yalnızca çıktı dosyası tanımlayıcısını sınamaya dayanan programlar üzerinde nasıl …
38 shell  pipe  utilities  stdout  pty 

3
Boru hatları bellek kullanımını nasıl sınırlar?
Brian Kernighan bu videoda Bell Labs'ın küçük dillere / programlara yönelik hafıza kısıtlamalarına dayanan cazibesini anlatıyor. Büyük bir makine 64 k-bayt - K, M veya G değil - ve bu da herhangi bir programın çok büyük olamayacağı anlamına geliyordu ve bu nedenle küçük programlar ve daha sonra boru mekanizması yazmak …
36 pipe  history 

4
Neden “tail -f… | tail ”herhangi bir çıktı üretemedi mi?
Aşağıdaki komut neden çıktı vermiyor? $ tail -f /etc/passwd | tail Tamponlama hakkında okuduktan sonra , boşuna aşağıdakileri denedim: $ tail -f /etc/passwd | stdbuf -oL tail Aşağıdakilerin çıktı ürettiğini unutmayın: $ tail /etc/passwd | tail Yani bu mu: $ tail -f /etc/passwd | head Kuyruk sürümü 8.21 kullanıyorum (GNU …
36 pipe  tail 


2
/ proc / PID / fd / X bağlantı numarası
Linux'ta, içinde /proc/PID/fd/X, borular veya yuvalar olan dosya tanımlayıcıları için bağlantılar aşağıdaki gibidir: l-wx------ 1 user user 64 Mar 24 00:05 1 -&gt; pipe:[6839] l-wx------ 1 user user 64 Mar 24 00:05 2 -&gt; pipe:[6839] lrwx------ 1 user user 64 Mar 24 00:05 3 -&gt; socket:[3142925] lrwx------ 1 user user …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.