私は、サーバーで実行中のプロセスのインスタンスを30個持っており、分析のためにプロセスごとにオープンファイルを記録します。lsofはpidのセットに対してすべてのオープンファイルを提供する必要があります
* ps auwwx | grep PROG_NAME | awk '{print $2}' | xargs lsof -p | less
それからの苦情、「lsofを::上のステータスエラー:そのようなファイルやディレクトリ」私はlsof -p <pid>
を実行する場合
しかし、それは私に与え
は、私は、次のコマンドを実行しましたそのプロセスの開いているファイルのリストFreeBSDマシン上のプロセスの30個すべてのインスタンスに対して、開いているすべてのファイルのリストを取得するにはどうしたらいいですか?また、私は共有ライブラリをリストしたくありません。 -d "^txt"
を実行すると、表示されたい他のdbファイルが表示されません。 .soファイルをgrepする他の方法はありますか?
:特定のパターンにマッチするコマンドから開いているすべてのファイルを一覧表示する
lsof -c
を使用し、私は同様の問題を解決したかった - 開いているファイルの数を数えますプロセスあたり、特にJava。私はこれをこうしました: 'pgrep java | xargs -I {} bash -c 'printf {}; lsof -p {} | wc -l'' –