top查看進程,shift+f可以設置排序順序,如果按照RES排序,可以保證清晰的查看到系統占用內存較大的線程。接下來是小編為大家收集的怎麼用Linux內存使用情況查看命令,歡迎大家閱讀:
查看內存:free
total used free shared buffers cached
Mem: 8126976 7609376 517600 0 447392 1268632
-/+ buffers/cache: 5893352 2233624
Swap: 2928636 572388 2356248
top查看進程,shift+f可以設置排序順序,如果按照RES排序,可以保證清晰的查看到系統占用內存較大的線程。
ps:查看進程情況, 一般使用ps -ef, ps -aux
-A :所有的 process 均顯示出來,與 -e 具有同樣的效用;
-a :不與 terminal 有關的所有 process ;
-u :有效使用者 (effective user) 相關的 process ;
x :通常與 a 這個參數一起使用,可列出較完整信息。
輸出格式規劃:
l :較長、較詳細的將該 PID 的的信息列出;
j :工作的格式 (jobs format)
-f :做一個更為完整的輸出。
紅色為父進程id
guest 12032 11991 0 21:32 pts/0 00:00:00 grep httpd
admin 14969 26047 0 09:21 ? 00:00:01 /usr/alibaba/httpd/bin/httpd -d /home/admin/run/deploy
admin 20417 26047 0 09:36 ? 00:00:01 /usr/alibaba/httpd/bin/httpd -d /home/admin/run/deploy
root 26047 1 0 Nov19 ? 00:00:00 /usr/alibaba/httpd/bin/httpd -d /home/admin/run/deploy
通過pstree -p 26047, 可以看到所有的子進程的線程!
查看swap使用情況:
#!/bin/bash
PID=${1:-[1-9]*}
total_swap=0
GetSwap () {
pid=$1
cmdline=$(cat /proc/$pid/cmdline 2>/dev/null|tr '' ' ')
pid_swap=$(awk 'BEGIN{total=0}/Swap/{total+=$2}END{print total}' /proc/$pid/smaps 2>/dev/null)
if [ "$pid_swap" != '' ] && [ "$pid_swap" -gt 0 ]; then
echo "PID=$pid – Swap used: $pid_swap Kb – ($cmdline)"
fi
}
cd /proc
for pid in $PID; do
GetSwap $pid
let total_swap+=$pid_swap
done
echo "Total swap: $total_swap Kb"
看了“怎麼用Linux內存使用情況查看命令”還想看:
1.linux怎麼查看內存使用情況
2.如何檢查Linux的內存使用狀況
3.如何正確查看Linux機器內存使用情況
4.如何查看虛擬內存使用情況