«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
adlandırılmış borudan sürekli okuma (kedi veya kuyruk -f)
rsyslogBelirli günlük olaylarını günlüğe kaydetmek için yapılandırıldım /dev/xconsole: *.*;cron.!=info;mail.!=info |/dev/xconsole /dev/xconsoleadlı bir adlandırılmış kanaldır ( fifo). Nelerin günlüğe kaydedildiğini görmek istersem yapabilirim cat /dev/xconsole. cat /dev/xconsoleDosyayı okuduktan sonra komutun bitmediğini görmek yerine şaşırdım , bunun yerine işlev görür tail -f. diğer bir deyişle, iki komut aynı şekilde davranır: cat /dev/xconsole …
16 pipe  cat  tail  fifo 

2
STDIN ile komuta iletilen argümanlar arasındaki fark nedir?
Ben catyöntemi çalıştırmak için her iki formu kullanabilirsiniz : cat file_name cat &lt; file_name Sonuç aynı Sonra manşu formatta yürütmek istiyorumstdin man &lt; file_name Iken file_nameşunları içerir: # file_name cat Ama What manual page do you want?yürütmek yerine açılır man cat. Neden argüman olarak catkabul stdinedilebildiğini bilmek istemiyorum man. Ve …

3
kafa ekstra karakterler yiyor
Aşağıdaki kabuk komutunun giriş akışının yalnızca tek satırlarını yazdırması bekleniyordu: echo -e "aaa\nbbb\nccc\nddd\n" | (while true; do head -n 1; head -n 1 &gt;/dev/null; done) Ama bunun yerine sadece ilk satırı yazdırır: aaa. Aynı şey -c( --bytes) seçeneğiyle kullanıldığında gerçekleşmez : echo 12345678901234567890 | (while true; do head -c 5; …


2
Boru boyunca xargs kullanmanın bir yolu var mı?
Bir klasöre taşınan flac dosyalarını otomatik olarak başka bir klasördeki mp3'e dönüştürmeye çalışıyorum. Geçerli kod satırım şudur: inotifywait -m -r -q -e moved_to --format "'%w%f'" ~/test | xargs -I x flac -cd x - | lame -b 320 - /media/1tb/x.mp3 Bunun şu ana kadar nasıl çalıştığını açıklamak için, inotifywait oraya …
15 shell  pipe  xargs  inotify 

3
Gerçek zamanlı olarak bir komutun çıkardığı satır sayısını nasıl görüntüleyebilirim?
svn exportUygulamam için bir paketleyici komut dosyasının parçası olarak kullanıyorum ve bu komutun, diğerleri gibi, ilerleme çubuğu bulunmadığı anlaşılıyor. Şu anda iki seçeneğim var: seçenekleri olmadan kullanın ve binlerce satır yazdırmasını izleyin kullanma --quietve tamamlanana kadar hiçbir şey görmeme. En azından komutun çıkardığı satır sayısını gerçek zamanlı olarak göstermenin bir …

3
TCP bağlantısı için içeri / dışarı adlandırılmış yöneltmeler kullanma
Bunu bir süredir işe almakla uğraşıyorum, bu yüzden boruların nasıl çalıştığına dair bir tür temel yanlış anlaşılmanın sıkıntılarımın temel nedeni olduğundan şüpheleniyorum. Amacım, uzak bir ana bilgisayara TCP bağlantısı başlatmak netcatve dosya sisteminde iki adlandırılmış yönteme sahip olmak: Biri gelen verileri almak için süreçlerin okuyabileceği ve diğerlerinin giden veri olarak …
15 bash  pipe  tcp  netcat 

2
Grep ve sort komutlarını kullanarak nasıl sıralayabilirim?
Ben dosya bulunan tüm TCP hizmetlerin sıralı bir liste oluşturmak istiyorum /etc/services, boru komutunun çıktısını grep tcp /etc/serviceskomuta içine sort, sonra dosyaya bu borunun çıkışını yönlendirmek ~/pipelab.txt. Çıktımın yanlış olduğuna dair bir hata mesajı alıyorum ve nedenini bilmiyorum. En son denediğim bu: grep tcp /etc/services &gt; ~/pipelab.txt | sort
15 shell  pipe 

3
Boru ve stdout'a doğrudan çıkış
Bir komutun çıkışını oluşturup stdout'a yönlendirmenin bir yolu olup olmadığını merak ediyordum. Örneğin, fortunebir fal kurabiyesi yazdırır ve ayrıca panoya kopyalar: $ fortune | tee &gt;(?stdout?) | pbcopy "...Unix, MS-DOS, and Windows NT (also known as the Good, the Bad, and the Ugly)." (By Matt Welsh)
15 bash  pipe  stdout  tee 

1
'Kuyruğa' borulama neden bir satırın içeriğini değiştiriyor?
SELECTMySQL Workbench ile bir sonucunu görüntülediğimde, tek bir \ max@host 10:13:58: ~$ mysql -h db-master.domain.local -uuser -ppw db -e ' &gt; SELECT &gt; DISTINCT i.filesourceregexp &gt; FROM db.ImportLogFiles i' +------------------------------------------------+ | filesourceregexp | +------------------------------------------------+ | ^[0-9]{8}_1062355673_merge_google_pbn\.csv$ | | ^[0-9]{8}_8026062435_merge_google_pbn\.csv$ | | ^[0-9]{8}_1062355673_store_visits_report\.csv$ | +------------------------------------------------+ max@host 10:14:10: ~$ mysql -h db-master.domain.local …
14 pipe  mysql  tail 


9
Bir dosyanın belirli bölümlerini filtreleme veya yöneltme
Bazı bölümleri olan bir giriş dosyası var, örneğin başlangıç ​​ve bitiş etiketleri ile sınırlanmıştır: line A line B @@inline-code-start line X line Y line Z @@inline-code-end line C line D Bu dosyaya, X, Y, Z satırlarının bazı komutlarla ( nlörneğin) filtrelendiği , ancak satırların geri kalanının değişmeden geçtiği şekilde bir …

1
Boru hatları ile çok satırlı bir bash komutunda ayrı satırlarda okunabilir yorumlar?
Boru hatları kullanarak kabuk komut dosyaları oluştururken ve satırları devam ettirmek için ters eğik çizgi kullanırken, yorum eklemek istiyorum çizgiyi kullanırken , sağlam, okunabilir ve taşınabilir bir şekilde ayrı satırlara . Örneğin, bu önerilmeyen çok satırlı komut verildiğinde (netliği için @DigitalRoss'tan çalındı): echo abc | tr a-z A-Z | sort …
14 bash  shell  pipe 

1
arka plan işlem boru girişi
ekranda "aaa" görüntülemek istiyorsanız: (1)$: echo aaa | cat ... works OK (2)$: echo aaa | ( cat ) ... works OK (3)$: echo aaa | ( cat &amp; ) ... NOT working (4)$: ( echo aaa &amp; ) | cat ... works OK (5)$: echo aaa | ( cat …


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.