linux学习手册,Linux命令学习手册-ps
ps [選項]
功能
察看運(yùn)行進(jìn)程。
舉例
顯示所有進(jìn)程
$ps aux
輸入之后,輸出如下:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.1 3056 876 ? Ss 09:16 0:01 /sbin/init
root 2 0.0 0.0 0 0 ? S< 09:16 0:00 [kthreadd]
root 2289 0.0 0.0 2528 456 ? S
root 4314 0.0 0.0 4040 256 ? Ss 09:17 0:00 /usr/sbin/rpc.idmapd
root 4438 0.0 0.0 1780 420 tty4 Ss+ 09:17 0:00 /sbin/getty 38400 tty4
mysql 4962 0.0 0.5 128400 2856 ? Sl 09:17 0:03 /usr/sbin/mysqld --basedir=/usr -
1000 8472 0.0 1.4 30388 7096 pts/4 Sl+ 13:31 0:00 vi .
1000 8476 0.0 0.7 6388 3544 pts/5 Ss 13:32 0:00 /bin/bash
1000 8504 0.0 0.3 3952 1564 pts/5 S+ 13:33 0:00 man ps
1000 8513 0.0 0.2 3508 1076 pts/5 S+ 13:33 0:00 pager -s
1000 8649 0.0 0.2 2744 1016 pts/3 R+ 13:47 0:00 ps aux
這里,實(shí)際上輸出的 pid 是遞增的,輸出很多,我只截取了很少的一部分,輸出過長的行會被截斷。
字段含義如下:
USER 進(jìn)程的屬主;
PID 進(jìn)程的 ID ;
PPID 父進(jìn)程;
%CPU 進(jìn)程占用的 CPU 百分比;
%MEM 占用內(nèi)存的百分比;
NI 進(jìn)程的 NICE 值,數(shù)值大,表示較少占用 CPU 時間;
VSZ 進(jìn)程虛擬大小;
RSS 駐留中頁的數(shù)量;
TTY 終端 ID
STAT 進(jìn)程狀態(tài)(有以下幾種)
D 無法中斷的休眠狀態(tài)(通常 IO 的進(jìn)程);
R 正在運(yùn)行可中在隊列中可過行的;
S 處于休眠狀態(tài);
T 停止或被追蹤;
W 進(jìn)入內(nèi)存交換(從內(nèi)核 2.6 開始無效);
X 死掉的進(jìn)程(從來沒見過);
Z 僵尸進(jìn)程;
< 優(yōu)先級高的進(jìn)程
N 優(yōu)先級較低的進(jìn)程
L 有些頁被鎖進(jìn)內(nèi)存;
s 進(jìn)程的領(lǐng)導(dǎo)者(在它之下有子進(jìn)程);
l 多進(jìn)程的(使用 CLONE_THREAD , 類似 NPTL pthreads );
+ 位于后臺的進(jìn)程組;
WCHAN 正在等待的進(jìn)程資源;
START 啟動進(jìn)程的時間;
TIME 進(jìn)程消耗 CPU 的時間;
COMMAND 命令的名稱和參數(shù);
輸出指定的字段
$ps -o pid,ppid,pgrp,session,tpgid,comm
輸入之后,輸出如下:
PID PPID PGRP SESS TPGID COMMAND
6094 6024 6094 6094 6163 bash
6132 6094 6132 6094 6163 vi
6163 6094 6163 6094 6163 ps
查看當(dāng)前進(jìn)程狀況
$ps
輸入之后,輸出如下:
PID TTY TIME CMD
6186 pts/2 00:00:00 bash
8760 pts/2 00:00:00 ps
查看進(jìn)程所有者及其他一些詳細(xì)信息
$ps u
輸入之后,輸出如下:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
1000 6147 0.0 0.2 6368 1216 pts/0 Ss 09:23 0:00 bash
1000 6167 0.0 0.1 4296 640 pts/0 S+ 09:23 0:00 screen
1000 6169 0.0 0.3 6396 2012 pts/1 Ss 09:23 0:00 /bin/bash
1000 6186 0.0 0.3 6392 1548 pts/2 Ss+ 09:24 0:00 /bin/bash
1000 6230 0.0 0.4 6400 2076 pts/3 Ss+ 09:24 0:00 /bin/bash
1000 6247 0.0 0.4 6408 2212 pts/4 Ss+ 09:24 0:00 /bin/bash
1000 7432 0.0 0.2 3276 1088 pts/1 S+ 10:43 0:00 telnet 192.168.100.200
1000 8472 0.0 1.4 30388 7144 pts/4 Tl 13:31 0:01 vi .
1000 8476 0.0 0.7 6388 3544 pts/5 Ss 13:32 0:00 /bin/bash
1000 8504 0.0 0.3 3952 1564 pts/5 S+ 13:33 0:00 man ps
1000 8513 0.0 0.2 3508 1076 pts/5 S+ 13:33 0:00 pager -s
1000 8837 0.5 0.6 6288 3448 tty1 S+ 14:08 0:00 -bash
1000 8958 5.3 0.6 6376 3536 pts/6 Ss 14:08 0:00 bash
1000 8974 0.0 0.2 2744 1020 pts/6 R+ 14:08 0:00 ps u
這里,使用 u 選項來查看進(jìn)程所有者及其他一些詳細(xì)信息,注意是 u 不是 -u 。
注意,在 bash 進(jìn)程前面有條橫線,意味著該進(jìn)程便是用戶的登錄 shell ,所以對于一個登錄用戶來說帶短橫線的進(jìn)程只有一個。還可以看到 %CPU 、 %MEM 兩個選項,前者指該進(jìn)程占用的 CPU 時間和總時間的百分比;后者指該進(jìn)程占用的內(nèi)存和總內(nèi)存的百分比。在這種情況下看到了所有控制終端的進(jìn)程;但是對于其他那些沒有控制終端的進(jìn)程還是沒有觀察到,所以這時就需要使用x選項。使用x選項可以觀察到所有的進(jìn)程情況。
查看系統(tǒng)上所有的進(jìn)程
$ps -e
查看你的進(jìn)程
$ps x
以樹狀方式顯示進(jìn)程
$ps f
輸入之后,輸出如下:
PID TTY STAT TIME COMMAND
8476 pts/5 Ss 0:00 /bin/bash
8504 pts/5 S+ 0:00 \_ man ps
8513 pts/5 S+ 0:00 \_ pager -s
6247 pts/4 Ss 0:00 /bin/bash
8472 pts/4 Sl+ 0:01 \_ vi .
6230 pts/3 Ss 0:00 /bin/bash
9168 pts/3 R+ 0:00 \_ ps f
6186 pts/2 Ss+ 0:00 /bin/bash
6169 pts/1 Ss 0:00 /bin/bash
7432 pts/1 S+ 0:00 \_ telnet 192.168.100.200
6147 pts/0 Ss 0:00 bash
6167 pts/0 S+ 0:00 \_ screen
8837 tty1 S+ 0:00 -bash
樹形顯示所有進(jìn)程并且沒有截斷
$ps auxfww
描述
要對進(jìn)程進(jìn)行監(jiān)測和控制,首先必須要了解當(dāng)前進(jìn)程的情況,也就是需要查看當(dāng)前進(jìn)程,而 ps 命令就是最基本同時也是非常強(qiáng)大的進(jìn)程查看命令。
使用該命令可以確定有哪些進(jìn)程正在運(yùn)行和運(yùn)行的狀態(tài)、進(jìn)程是否結(jié)束、進(jìn)程有沒有僵死、哪些進(jìn)程占用了過多的資源等等。
總之大部分信息都是可以通過執(zhí)行該命令得到的。 ps 為我們提供了進(jìn)程的一次性的查看,它所提供的查看結(jié)果并不動態(tài)連續(xù)的;如果想對進(jìn)程時間監(jiān)控,應(yīng)該用 top 工具。
ps 命令最常用的還是用于監(jiān)控后臺進(jìn)程的工作情況,因為后臺進(jìn)程是不和屏幕鍵盤這些標(biāo)準(zhǔn)輸入/輸出設(shè)備進(jìn)行通信的,所以如果需要檢測其情況,便可以使用 ps 命令了。
注意 ps -aux 和 ps aux 是不同的。 POSIX 和 UNIX 標(biāo)準(zhǔn),要求 ps -aux 打印用戶名"x"擁有的所有進(jìn)程,和使用 -a 選項選定的進(jìn)程。如果用戶 x 不存在,那么就把命令解釋成為 ps aux ,并且打印一個警告。
默認(rèn)的情況, ps 選擇所有具有和當(dāng)前用戶相同的effective user ID(euid),以及和進(jìn)程相關(guān)的終端( tname=TTY ), CPU 時間,和可執(zhí)行名稱.
還可以看線程。
命令項說明:
-e 顯示所有進(jìn)程。
-f 全格式,用樹形格式來顯示進(jìn)程。
-l 長格式。
-w 寬輸出(同 w )。
-a 顯示所有的除了session leaders之外的進(jìn)程和與終端無關(guān)的進(jìn)程。
h 不顯示標(biāo)題(注意,這里面沒有前面的橫線)。
a 顯示終端上的所有進(jìn)程,包括其他用戶的進(jìn)程。(注意和 -a 不同)
ww 避免詳細(xì)參數(shù)被截斷;
總結(jié)
以上是生活随笔為你收集整理的linux学习手册,Linux命令学习手册-ps的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: hybrid7 宝马active_【图】
- 下一篇: android 照片特效,android