実行中の特定のプロセスの更新リストを取得する

実行中の特定のプロセスの更新リストを取得する

VSZ, RSS %MEM, %CPUなどを使用して実行中のPythonプロセスを監視したいと思います。私の最初の作業の1つは、X秒ごとにリストを更新することです。私はps以下を使用して更新プロセスのリストを取得しました。watch

ps ax | grep python | awk '{print $1}' | xargs watch -n 15 ps u -p

pythonこのコマンドは、単にコマンドラインに含まれるすべてのプロセスを見つけてpspidをに渡しますwatch

ps u -p 9221 10186 11640 12347 14076 14263 14317 19029 22099 24278 26161 32469

すべてが正常ですが、コマンドはpidリストを一度だけ評価し、それらをpid監視し続けます。私にとって必要なのは、ps ax | grep pythonX秒ごとにコマンドを実行し、実行中のプロセスの新しいリストを取得することです。これにより、どのプロセスが開始され、どのプロセスが実行を完了したかを確認できます。

答え1

どんなコマンドでも見ることができますので、試してみてください。

watch "ps aux | grep python"

答え2

ウォッチの代わりにtopを使用することもできます。

top -p $(ps ax | grep python | awk '{print $1}' | paste -sd "," -) -d 2

関連情報