您好,登錄后才能下訂單哦!
進程管理命令之ps,top,htop,dstat
ps:report a snapshot of the current processes.
顯示當前進程的狀態
語法:ps [options]
選項有三種風格:
1、UNIX options, which may be grouped and must be
preceded by a dash.
2、BSD options, which may be grouped and must not
be used with a dash.
3、GNU long options, which are preceded by two
dashes.
ps選項option:
a:所有與終端相關的進程
x;所有與終端無關的進程
u:以用戶為中心組織進程狀態信息顯示;
注:以上幾個選項沒有“-”,加上“-”結果也不一樣
常用組合之一:aux
ps aux中的字段意義:
USER:用戶
PID;進程號
%CPU:累計cpu占用率
%MEM:占內存總量的百分數
VSZ:虛擬內存集
RRS:resident size常駐內存集(堅決不能放在交換分區上的)
STAT:進程狀態
R:running運行態
S:interruptable sleeping可中斷睡眠
D:不可中斷睡眠
T:Stoped停止態
Z:僵死態
+:前臺進程(運行在終端之上)
l:多線程進程
N:低優先級進程
<:高優先級進程
s:session leader會話主導者
[root@bucktan ~]# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.1 19364 1536 ? Ss 16:28 0:01 /sb
root 2 0.0 0.0 0 0 ? S 16:28 0:00
root 3 0.0 0.0 0 0 ? S 16:28 0:00
root 4 0.0 0.0 0 0 ? S 16:28 0:00
root 5 0.0 0.0 0 0 ? S 16:28 0:00
root 6 0.0 0.0 0 0 ? S 16:28 0:00
root 7 0.0 0.0 0 0 ? S 16:28 0:00
###后面的省略
-e:顯示所有進程
-f:顯示完整格式的進程信息
-F:顯示完整格式的進程信息
[root@bucktan ~]# ps -f
UID PID PPID C STIME TTY TIME CMD
root 2399 2395 0 16:55 pts/0 00:00:00 -bash
root 2489 2399 1 17:17 pts/0 00:00:00 ps -f
[root@bucktan ~]# ps -F
UID PID PPID C SZ RSS PSR STIME TTY TIME CMD
root 2399 2395 0 27118 1872 1 16:55 pts/0 00:00:00 -ba
root 2490 2399 2 27560 1136 1 17:17 pts/0 00:00:00 ps
[root@bucktan ~]# ps -e
PID TTY TIME CMD
1 ? 00:00:01 init
2 ? 00:00:00 kthreadd
3 ? 00:00:00 migration/0
4 ? 00:00:00 ksoftirqd/0
5 ? 00:00:00 stopper/0
6 ? 00:00:00 watchdog/0
7 ? 00:00:00 migration/1
8 ? 00:00:00 stopper/1
9 ? 00:00:00 ksoftirqd/1
10 ? 00:00:00 watchdog/1
###后面的省略
常用組合之二:-ef -eF
C:cpu占用百分比
PSR:進程運行在哪個cpu上
-H:以層級結構顯示進程的相關信息
[root@bucktan ~]# ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 16:28 ? 00:00:01 /sbin/init
root 2 0 0 16:28 ? 00:00:00 [kthreadd]
root 3 2 0 16:28 ? 00:00:00 [migration/0]
root 4 2 0 16:28 ? 00:00:00 [ksoftirqd/0]
###后面的省略
[root@bucktan ~]# ps -eF
UID PID PPID C SZ RSS PSR STIME TTY TIME CMD
root 1 0 0 4841 1536 1 16:28 ? 00:00:01 /sb
root 2 0 0 0 0 1 16:28 ? 00:00:00 0
root 3 2 0 0 0 0 16:28 ? 00:00:00 0
###后面的省略
常用組合之三: -eFH
[root@bucktan ~]# ps -eFH
UID PID PPID C SZ RSS PSR STIME TTY TIME CMD
root 2 0 0 0 0 1 16:28 ? 00:00:00 [kthreadd]
root 3 2 0 0 0 0 16:28 ? 00:00:00 [migration/0]
####中間省略了一些
root 2083 1 0 6197 1848 0 16:29 ? 00:00:00 /usr/sbin/bluetoothd --udev
root 2127 1 0 16556 1180 1 16:29 ? 00:00:00 /usr/sbin/sshd
root 2395 2127 0 24992 4040 0 16:55 ? 00:00:00 sshd: root@pts/0
####后面的省略
常用組合之四:
o field1,field2,。。:自定義要顯示的字段列表,以逗號分隔;
常用的field:pid,ni(nice值),pri(優先級),psr,pcpu,stat,comm,tty,ppid,rtprio(實時優先級)
[root@bucktan ~]# ps o pid,ni,stat
PID NI STAT
2295 0 Ss+
2297 0 Ss+
2299 0 Ss+
2301 0 Ss+
2303 0 Ss+
ps命令就以上部分
=========================================================================================
下面看看top命令
top - display Linux processes顯示linux進程
排序;
P:以占據cpu百分比排序
M;以占據內存百分比排序
T:累計占用cpu時間排序
首部信息:
uptime:l命令
tasks及cpu信息:t命令
內存信息:m命令
退出命令:q
修改刷新時間間隔:s
終止指定的進程:k
注:以上的都是進入top命令之后才能使用的命令,即子命令
[root@bucktan ~]# top
top - 17:37:14 up 1:08, 1 user, load average: 0.00, 0.00, 0.00
Tasks: 118 total, 1 running, 117 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%s
Mem: 1004768k total, 235096k used, 769672k free, 41308k buf
Swap: 2031612k total, 0k used, 2031612k free, 66600k cac
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAN
11 root 20 0 0 0 0 S 0.3 0.0 0:04.47 events/
2566 root 20 0 15032 1212 924 R 0.3 0.1 0:00.07 top
1 root 20 0 19364 1536 1228 S 0.0 0.2 0:01.90 init
2 root 20 0 0 0 0 S 0.0 0.0 0:00.05 kthread
###后面的省略
top選項:-d #:指定刷新時間間隔,默認為3秒;
-b:以批次方式顯示
-n #:顯示多少批次;
=========================================================================================
htop命令:interactive process viewer
選項:
-d #:指定延遲時間間隔
-u Username:僅顯示指定用戶的進程
-s COLUME:以指定字段進行排序
子命令:
l:顯示選定的進程打開的文件列表
s:跟蹤選定的進程的系統調用
t:以層級關系顯示各進程狀態
a:將選定的進程綁定至某指定的CPU核心
========================================================================================
dstat命令:versatile tool for generating system resource statistics非常精巧的生成系統資源使用統計數據的工具
dstat [-afv] [options..] [delay [count]]
常用選項:
-c,--cpu:顯示cpu相關信息;
-C #,#,#...,tobal
-d,--disk:顯示磁盤的相關信息
-D sda,sdb,...,tobal
-g:顯示page相關的速率數據;
-m:Memory的相關統計數據
-n:interface的相關統計數據
-p:顯示process的相關統計數據
-r:顯示io請求的相關統計數據
-s:顯示swapped的相關統計數據
--tcp
。。。
--top-cpu:顯示最占用cpu的進程
--top-io:顯示最占用io的進程
--top-mem:顯示最占用內存的進程
--top-lantency:延遲最大的進程
實踐操作:
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。