2012-09-05 23 views
5

Çalışan bir linux işlemi (örneğin pid veya işlem adı verildiği zaman) tarafından kullanılan boruları listelemenin ve kullanılan kapasiteyi belirleme yolu var mı?Bir işlem tarafından bash komutuyla kullanılan borular nasıl listelenir?

şey gibi: gibi bir şey sonuçlanan

lspipes -l -p pid 

:

rw boru ucu türüdür ve boyut onun kullanılan kapasite

Veya benzer bir şeydir

[rw] descriptor size name 

cevap

10

1) ls -l /proc/pid/fd

Bu borular

lr-x------ 1 prabagaran prabagaran 64 Sep 5 23:01 14 -> pipe:[57729] 
l-wx------ 1 prabagaran prabagaran 64 Sep 5 23:01 15 -> pipe:[57728] 
lr-x------ 1 prabagaran prabagaran 64 Sep 5 23:01 16 -> pipe:[57731] 
lr-x------ 1 prabagaran prabagaran 64 Sep 5 23:01 17 -> pipe:[57730] 

2) lsof | grep 57731

wineserve 3641 prabagaran 76w  FIFO  0,8  0t0 57731 pipe 
winedevic 3651 prabagaran 16r  FIFO  0,8  0t0 57731 pipe 

Bu belirli bir işlem kimliği ile ilgili boru bilgileridir listeler.

2

Gerçekten böyle bir komut olduğunu sanmıyorum. Aşağıdaki deneyebilirsiniz: FIFO için ... hiçbir duruyor ise PID, işlem kimliği için durmak

lsof -p PID | grep FIFO

. Tam olarak "FIFO" yazmalısınız. Muhtemelen sadece boruları seçmek ve grep'dan kaçınmak için bir lsof anahtar vardır, ancak şu anda bu sayfada bulamıyorum.

Size aradığınız şeye yakın bir şey vermeli.

+0

FIFO ["First In, First Out" anlamına gelir.] (Http://www.linuxjournal.com/article/2156) – TML

+0

@TML, Biliyorum ... Ama değişmesi gerekmedi. PID ile yapması gereken buyruk:! D demek istediğim buydu! – Zagorax