方法如下:
成都創(chuàng)新互聯(lián)是專業(yè)的于田網(wǎng)站建設公司,于田接單;提供成都網(wǎng)站建設、成都做網(wǎng)站,網(wǎng)頁設計,網(wǎng)站設計,建網(wǎng)站,PHP網(wǎng)站建設等專業(yè)做網(wǎng)站服務;采用PHP框架,可快速的進行于田網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!
linux下查看某個進程的啟動命令的方法:
在Linux下,如果需要查看進程的啟動時間,常用ps aux命令,但是ps aux命令的缺陷在于只能顯示時間到年、日期、或者時間,無法具體到年月日時分秒。如果需要查看某個進程的具體啟動時間,使用ps -p PID -o Istart,其中,PID為某個進程的進程ID號。
如下所示,顯示系統(tǒng)中所有httpd進程的具體啟動時間。for pid in $(pgrep httpd); do echo -n "${pid} " ; ps -p ${pid} -olstart I grep -v "START" ; done。
301 Mon Aug 2711:21:59 2012。344 Mon Aug 2711:33:13 2012。25065 Sun Aug 26 03:27:03 2012。25066 Sun Aug 26 03:27:03 2012。25067 Sun Aug 26 03:27:03 2012。25068 Sun Aug 26 03:27:03 2012。25069 Sun Aug 2603:27:03 2012。25070 Sun Aug 26 03:27:03 2012。25071 Sun Aug 26 03:27:03 2012。25072 Sun Aug 26 03:27:03 2012。27903 Wed Jun 20 22:50:47 2012。32767 Mon Aug 27 11:21:48 2012。
查看系統(tǒng)所有正在運行的進程,可以用ps aux命令(它的-a參數(shù)表示,不與終端有關的進程也顯示出來)。還有一個和ps命令相似的命令是pstree,pstree命令用于列出正在運行的進程的進程樹,所謂進程樹就是顯示有關系的進程的相關性,也就是顯示父子進程之間的關系。pstree命令的常見用法是:pstree -Aup
-A參數(shù)表示:顯示出來的進程樹連接,用ASCII字符來顯示
-u參數(shù)表示:列出進程的所屬用戶
-p參數(shù)表示:列出每個進程的PID
ps命令和pstree命令是選取一個時間點的進程狀態(tài),還有一個top命令可以持續(xù)檢測進程運行狀態(tài),它顯示的是動態(tài)的信息,有點像Windows的任務管理器(不過top命令是命令行),使用方法:
top -d 數(shù)字
-d參數(shù)后面接一個數(shù)字表示幾秒更新一次顯示,一般可以設置成2,表示2秒一更新。
ps [options] [—help]
ps [-aAcdefHjlmNVwy][acefghLnrsSTuvxX][-C 指令名稱][-g 群組名稱]
[-G 群組識別碼][-p 進程識別碼][p 進程識別碼][-s 階段作業(yè)]
[-t 終端機編號][t 終端機編號][-u 用戶識別碼][-U 用戶識別碼]
[U 用戶名稱][-進程識別碼][--cols 每列字符數(shù)]
[--columns 每列字符數(shù)][--cumulative][--deselect][--forest]
[--headers][--help][-- info][--lines 顯示列數(shù)][--no-headers]
[--group 群組名稱][-Group 群組識別碼][--pid 進程識別碼]
[--rows 顯示列數(shù)][--sid 階段作業(yè)][--tty 終端機編號]
[--user 用戶名稱][--User 用戶識別碼][--version]
[--width 每列字符數(shù)]
? ?-a? 顯示所有終端機下執(zhí)行的進程,除了階段作業(yè)領導者之外
a? 顯示現(xiàn)行終端機下的所有進程,包括其他用戶的進程
-A? 顯示所有進程
-c? 顯示CLS和PRI欄位
c? 列出進程時,顯示每個進程真正的指令名稱,而不包含路徑,參數(shù)或常駐服務的標示
-C指令名稱 指定執(zhí)行指令的名稱,并列出該指令的進程的狀況
-d 顯示所有進程,但不包括階段作業(yè)領導者的進程
-e 此參數(shù)的效果和指定"A"參數(shù)相同
e 列出進程時,顯示每個進程所使用的環(huán)境變量
-f 顯示UID,PPIP,C與STIME欄位
f 用ASCII字符顯示樹狀結(jié)構(gòu),表達進程間的相互關系
-g群組名稱 此參數(shù)的效果和指定"-G"參數(shù)相同,當亦能使用階段作業(yè)領導者的名稱來指定
g 顯示現(xiàn)行終端機下的所有進程,包括群組領導者的進程
-G群組識別碼 列出屬于該群組的進程的狀況,也可使用群組名稱來指定
h 不顯示標題列
-H 顯示樹狀結(jié)構(gòu),表示進程間的相互關系
-j或j 采用工作控制的格式顯示進程狀況
-l或l 采用詳細的格式來顯示進程狀況
L 列出欄位的相關信息
-m或m 顯示所有的執(zhí)行緒
n 以數(shù)字來表示USER和WCHAN欄位
-N 顯示所有的進程,除了執(zhí)行ps指令終端機下的進程之外
-p進程識別碼 指定進程識別碼,并列出該進程的狀況
? ?p進程識別碼 此參數(shù)的效果和指定"-p"參數(shù)相同,只在列表格式方面稍有差異
r 只列出現(xiàn)行終端機正在執(zhí)行中的進程
-s階段作業(yè) 指定階段作業(yè)的進程識別碼,并列出隸屬該階段作業(yè)的進程的狀況
? ? s 采用進程信號的格式顯示進程狀況
S 列出進程時,包括已中斷的子進程資料
-t終端機編號 指定終端機編號,并列出屬于該終端機的進程的狀況
t終端機編號 此參數(shù)的效果和指定"-t"參數(shù)相同,只在列表格式方面稍有差異
-T 顯示現(xiàn)行終端機下的所有進程
-u用戶識別碼 此參數(shù)的效果和指定"-U"參數(shù)相同
u 以用戶為主的格式來顯示進程狀況
-U用戶識別碼 列出屬于該用戶的進程的狀況,也可使用用戶名稱來指定
U用戶名稱 列出屬于該用戶的進程的狀況
v 采用虛擬內(nèi)存的格式顯示進程狀況
-V或V 顯示版本信息
-w或w 采用寬闊的格式來顯示進程狀況。
? ?x 顯示所有進程,不以終端機來區(qū)分
? ?X 采用舊式的Linux i386登陸格式顯示進程狀況
? ?-y 配合參數(shù)"-l"使用時,不顯示F(flag)欄位,并以RSS欄位取代ADDR欄位
-進程識別碼 此參數(shù)的效果和指定"p"參數(shù)相同
--cols每列字符數(shù) 設置每列的最大字符數(shù)
--columns每列字符數(shù) 此參數(shù)的效果和指定"--cols"參數(shù)相同
--cumulative 此參數(shù)的效果和指定"S"參數(shù)相同
--deselect 此參數(shù)的效果和指定"-N"參數(shù)相同
--forest 此參數(shù)的效果和指定"f"參數(shù)相同
--headers 重復顯示標題列
--help 在線幫助
--info 顯示排錯信息
--lines顯示列數(shù) 設置顯示畫面的列數(shù)
--no-headers? 此參數(shù)的效果和指定"h"參數(shù)相同,只在列表格式方面稍有差異
--group群組名稱 此參數(shù)的效果和指定"-G"參數(shù)相同
--Group群組識別碼 此參數(shù)的效果和指定"-G"參數(shù)相同
--pid進程識別碼 此參數(shù)的效果和指定"-p"參數(shù)相同
--rows顯示列數(shù) 此參數(shù)的效果和指定"--lines"參數(shù)相同
--sid階段作業(yè) 此參數(shù)的效果和指定"-s"參數(shù)相同
--tty終端機編號 此參數(shù)的效果和指定"-t"參數(shù)相同
--user用戶名稱 此參數(shù)的效果和指定"-U"參數(shù)相同
--User用戶識別碼 此參數(shù)的效果和指定"-U"參數(shù)相同
--version 此參數(shù)的效果和指定"-V"參數(shù)相同
? ?--widty每列字符數(shù) 此參數(shù)的效果和指定"-cols"參數(shù)相同
? ?-A 列出所有的行程
? ?-w 顯示加寬可以顯示較多的資訊
? -au 顯示較詳細的資訊
? -aux 顯示所有包含其他使用者的行程
linux上進程有5種狀態(tài):?
1.?運行(正在運行或在運行隊列中等待)?
2.?中斷(休眠中,?受阻,?在等待某個條件的形成或接受到信號)?
3.?不可中斷(收到信號不喚醒和不可運行,?進程必須等待直到有中斷發(fā)生)?
4.?僵死(進程已終止,?但進程描述符存在,?直到父進程調(diào)用wait4()系統(tǒng)調(diào)用后釋放)?
5.?停止(進程收到SIGSTOP,?SIGSTP,?SIGTIN,?SIGTOU信號后停止運行運行)?
ps工具標識進程的5種狀態(tài)碼:?
D?不可中斷?uninterruptible?sleep?(usually?IO)?
R?運行?runnable?(on?run?queue)?
S?中斷?sleeping?
T?停止?traced?or?stopped?
Z?僵死?a?defunct?(”zombie”)?process?
1、# ps aux //顯示所有正在內(nèi)存中的程序
USER:該?process?屬于那個使用者賬號的
PID?:該?process?的號碼
%CPU:該?process?使用掉的?CPU?資源百分比
%MEM:該?process?所占用的物理內(nèi)存百分比
VSZ?:該?process?使用掉的虛擬內(nèi)存量?(Kbytes)
RSS?:該?process?占用的固定的內(nèi)存量?(Kbytes)
TTY?:該?process?是在那個終端機上面運作,若與終端機無關,則顯示??,另外,?tty1-tty6?是本機上面的登入者程序,若為?pts/0?等等的,則表示為由網(wǎng)絡連接進主機的程序。
STAT:該程序目前的狀態(tài),主要的狀態(tài)有
R?:該程序目前正在運作,或者是可被運作
S?:該程序目前正在睡眠當中?(可說是?idle?狀態(tài)),但可被某些訊號?(signal)?喚醒。
D: 無法中斷的休眠狀態(tài) (通常 IO 的進程)
T?:該程序目前正在偵測或者是停止了
Z?:該程序應該已經(jīng)終止,但是其父程序卻無法正常的終止他,造成?zombie?(疆尸)?程序的狀態(tài)
: 高優(yōu)先序的行程
N: 低優(yōu)先序的行程
L: 有記憶體分頁分配并鎖在記憶體內(nèi) (實時系統(tǒng)或捱A I/O)
START:該?process?被觸發(fā)啟動的時間
TIME?:該?process?實際使用?CPU?運作的時間
COMMAND:該程序的實際指令
2、# ps -A 顯示進程信息
3、# ps -u work //顯示work進程用戶信息
4、# ps -ef //顯示所有命令,連帶命令行
5、# ps -l //將屬于自己這次登入的pid與相關信息顯示出來
F:代表這個程序的旗標?(flag),?4?代表使用者為?super?user
S:代表這個程序的狀態(tài)?(STAT)
UID:程序被該?UID?所擁有
PID:就這個程序的?ID?
PPID:其上級父程序的ID
C:CPU使用的資源百分比
PRI:?Priority?(優(yōu)先執(zhí)行序)?的縮寫
NI:?Nice?值
ADDR:kernel?function,指出該程序在內(nèi)存的那個部分。如果是個?running的程序,一般就是?"-"
SZ:使用掉的內(nèi)存大小
WCHAN:目前這個程序是否正在運作當中,若為?-?表示正在運作
TTY:登入者的終端機位置
TIME:使用掉的?CPU?時間。
CMD:所下達的指令為何
在預設的情況下,?ps?僅會列出與目前所在的?bash?shell?有關的?PID,所以,?當使用?ps?-l?的時候,只有三個?PID。
6、其他
1)可以用?|?管道和?more?連接起來分頁查看
命令:ps?-aux?|more
2)把所有進程顯示出來,并輸出到ps001.txt文件
命令:ps?-aux??ps001.txt
3)輸出指定的字段
命令:ps -o pid,ppid,pgrp,session,tpgid,comm