UNIX では、メモリ使用量が高いプロセスの完全なコマンド名を取得します。

UNIX では、メモリ使用量が高いプロセスの完全なコマンド名を取得します。

私のボックスで高いメモリを使用してプロセス名をキャプチャしようとしています。それを得るために、次のコマンドを実行しました。

while [ 1 ]
do
   ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head
   sleep 5
done

しかし、問題は、PIDの実行に関する完全なcmd詳細を提供しないことです。私が得た結果は次のとおりです。

PID  PPID CMD                            %MEM     %CPU
916 915 /usr/bin/perl /release/data/ 11.9  0.2
831 830 /usr/bin/perl -w /release/da  6.5  0.0
608 607 /etc/alternatives/java_sdk_  2.4  1.2
135 134 /etc/alternatives/java_sdk_  1.4  1.6

PIDの完全なコマンドをキャプチャしたいと思います。

ベストアンサー1

「完全なcmdの詳細」は引数リストを含むことを意味すると仮定しますか?もしそうなら、これを試してみてください。最大100文字の幅のCMD列を提供します。必要に応じて調整できます。

ps -eo pid,ppid,cmd:100,%mem,%cpu --sort=-%mem | head

おすすめ記事