実行中のプロセスのリスト

実行中のプロセスのリスト

top実行中のプロセスを表示するコマンドがあります。フィールドに固有の値のソートされたリストを印刷したいと思いますCOMMAND。これには解決策があります。

$ top -b -n 1 | tail -n+8 | awk '{print $12}' | cut -d'/' -f 1 |  sort | uniq

ただし、このコマンドはこの単純な目的に比べて冗長すぎます。これにもっと簡単な解決策がありますか?

添付:ps代わりに使用できますが、top返される形式がうるさいです。chromevs /opt/google/chrome/chrome --type=renderer --enable- features=LinuxObsoleteSystemIsEndOfTheLine<LinuxObsoleteSystemIsEndOfTheLine --lang=en-US --force-... コマンドの先頭に過ぎません。

答え1

この内容をよくお読みくださいps

これは興味深いスタートかもしれません。

ps -eo comm=,

または

ps -eo cmd=,

あなたはおそらく最初のものが欲しいでしょう。

非常に細かく制御するには、すべての数字が表示されます。行を読むか、角かっこの間Name/proc/nnnnnn/status文字列を解析します。完全なコマンドラインでは、ファイルのNULバイトを読み取り、空白文字に変換します。statnnnnn/proc/nnnnnn/cmdline

psBSD(このエコシステムの一部として提供されています)は、Linuxバージョン(procps-ngプロジェクトでLinuxに提供されています)とは少し異なり、オプションは両方の間で少し異なると解釈されます。 *BSDを使ったことがある場合は注目に値します。

関連情報