単一プロセスの仮想メモリサイズ(VSZ)値の取得

単一プロセスの仮想メモリサイズ(VSZ)値の取得

Linuxサーバーで実行されている特定のプロセスのVSZ値を取得したいと思います。

次のコマンド:

ps -eo size,pid,user,command --sort -size | awk '{ hr=$1/1024 ; printf("%13.2f Mb ",hr) } { for ( x=4 ; x<=NF ; x++ ) { printf("%s ",$x) } print "" }'   

すべてのプロセスで高いメモリ使用量を減らします。

単一プロセスの(VSZ)値を取得する方法。

「proxyfarm」のVSZ値を取得したいとしましょう。次のコマンドを使用してこれを達成するには:

ps ux | grep httpd | grep proxyfarm    can fetch proxyfarm complete details.But, i need only VSZ of it.

ベストアンサー1

以下で仮想メモリサイズ(vsz)の値を確認してください。/proc/<PID>/stats

~によると/procの人々,列23は/proc/<PID>/statsvsz値を表す。バイト

たとえば、PIDが3917の場合:

cat /proc/3917/stat | cut -d" " -f23

以下に報告されるvsz値は/proc/PID/stats推定値です。バイト, コマンドの出力はps -o vsz= -p "$pid"次のように推定されます。キロバイトまたは基本布(1KiBは1024バイトと同じです)。

/proc/PID/statvszの出力を次に変換するにはバイト到着基本布:

cat /proc/3917/stat | cut -d" " -f23 | xargs -n 1 bash -c 'echo $(($1/1024))' args

おすすめ記事