psとpwdxを同時に使う方法は?

psとpwdxを同時に使う方法は?

Topサーバーで何が起こっているかを確認するために使用できるコマンドがあります。

ps -eo pid,cmd:50,%mem,%cpu --sort=-%mem | head 20

ps既定では、複数の列を使用して削除します。

pwdx各プロセスIDについて、ソースディレクトリがどこにあるかを確認するために使用できます。

しかし、pwdx上記のコマンドの出力を組み合わせて列として追加するのに問題があります。

助けてもらえますか?

ベストアンサー1

psprocpsにはpwdxコマンドが含まれていますが、これを提供しないのは奇妙ですps -o cwd

Linuxで(psとにかくコマンド呼び出しはすでにLinuxのみ(procps)です)プロセスの現在のc作業wディレクトリを取得するには、次のようにします。dreadlink("/proc/<pid>/cwd")

ps -eo pid,cmd:50,%mem,%cpu --sort=-%mem |
  perl -lane 'print "$_ " . ($. == 1 ? "CWD" : readlink("/proc/$F[0]/cwd"));
              exit if $. == 20'

必要ありませんpwdx(またはhead)。

おすすめ記事