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>/stats
vsz値を表す。バイト。
たとえば、PIDが3917の場合:
cat /proc/3917/stat | cut -d" " -f23
以下に報告されるvsz値は/proc/PID/stats
推定値です。バイト, コマンドの出力はps -o vsz= -p "$pid"
次のように推定されます。キロバイトまたは基本布(1KiBは1024バイトと同じです)。
/proc/PID/stat
vszの出力を次に変換するにはバイト到着基本布:
cat /proc/3917/stat | cut -d" " -f23 | xargs -n 1 bash -c 'echo $(($1/1024))' args