8

実行中の Linux プロセスが使用するパイプを一覧表示して (たとえば、pid またはプロセス名を指定して)、それらの使用済み容量を特定する方法はありますか?

何かのようなもの:

lspipes -l -p pid

次のような結果になります。

[rw]  descriptor  size  name

ここで、rw はパイプ エンド タイプで、size はその使用容量です。

または似たようなもの

4

2 に答える 2

12

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

これらは、指定されたプロセス ID に関連するパイプ情報です。

于 2012-09-05T17:50:19.017 に答える
2

そんなコマンドは無いと思います。次のことを試すことができます。

lsof -p PID | grep FIFO

PID はプロセス ID を表し、FIFO は ... なしを表します。正確に「FIFO」と書く必要があります。おそらく、lsofパイプのみを選択して を回避するスイッチがありますgrepが、現在、man ページで見つけることができません。

探しているものに近いものが得られるはずです。

于 2012-09-05T15:55:13.123 に答える