2012-09-05 16 views
5

के साथ किसी प्रक्रिया द्वारा उपयोग की जाने वाली पाइपों को कैसे सूचीबद्ध करें, क्या चल रहे लिनक्स प्रक्रिया (उदा। इसकी पिड या प्रक्रिया नाम दिया गया) द्वारा उपयोग की जाने वाली पाइप सूचीबद्ध करने का तरीका है और उनकी उपयोग की गई क्षमता निर्धारित करने के लिए?एक बैश कमांड

कुछ की तरह:

lspipes -l -p pid 

की तरह कुछ में जिसके परिणामस्वरूप:

[rw] descriptor size name 

जहां rw पाइप अंत प्रकार है और आकार अपने इस्तेमाल किया क्षमता

या कुछ इसी तरह है

उत्तर

10

1) ls -l /proc/pid/fd

यह पाइप

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 

ये दिया प्रक्रिया आईडी से संबंधित पाइप जानकारी कर रहे हैं सूची जाएगा।

2

मुझे सच में नहीं लगता कि ऐसा आदेश है। आप निम्न की कोशिश कर सकते हैं:

lsof -p PID | grep FIFO

कहाँ पीआईडी ​​प्रक्रिया आईडी के लिए खड़े हो जाओ, जबकि फीफो के लिए ... कुछ भी नहीं खड़ा है। आपको बिल्कुल "फीफो" लिखना है। शायद lsof केवल पाइप चुनने और grep से परहेज करने के लिए स्विच है, लेकिन मुझे अभी मैन पेज में नहीं मिल रहा है।

यह आपको जो कुछ भी ढूंढ रहा है उसके करीब कुछ देना चाहिए।

+0

फीफो ["फर्स्ट इन, फर्स्ट आउट" के लिए खड़ा है] (http://www.linuxjournal.com/article/2156) – TML

+0

@TML, मुझे पता है ... लेकिन उसे इसे बदलने की आवश्यकता नहीं थी कमांड के रूप में वह पीआईडी ​​के साथ करना चाहता है!: डी यही मेरा मतलब था! – Zagorax

संबंधित मुद्दे