在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ Linux/ shell 學(xué)習(xí)五十天----查看進(jìn)程 ps 命令
shell 學(xué)習(xí)四十一天----列出文件 ls 和 od 命令
shell 學(xué)習(xí)小結(jié)
shell 學(xué)習(xí)第二十八天----case 語(yǔ)句
shell 學(xué)習(xí)四十四天----尋找文件
shell 學(xué)習(xí)三十五天----波浪號(hào)展開(kāi)與通配符
shell 學(xué)習(xí)三十八天----執(zhí)行順序和 eval
shell 學(xué)習(xí)四十八天----文件校驗(yàn)和匹配
shell 學(xué)習(xí)四十天----awk 的驚人表現(xiàn)
shell 學(xué)習(xí)第十一天----sed 正則的精確控制
shell 學(xué)習(xí)第十七天----awk 命令
shell 學(xué)習(xí)三十九天----內(nèi)建命令
shell 學(xué)習(xí)四十五天----xargs
shell 學(xué)習(xí)三十七天----引用
shell 學(xué)習(xí)第十六天----join 練習(xí)
shell 學(xué)習(xí)第二十四天----提取開(kāi)頭或結(jié)尾數(shù)行
shell 學(xué)習(xí)第九天----分組
shell 學(xué)習(xí)第五天----基本的 I/O 重定向
shell 學(xué)習(xí)第十五天----使用 cut 選定字段
shell 學(xué)習(xí)四十六天----文件系統(tǒng)的空間信息 df 和 du 命令
shell 學(xué)習(xí)第八天----擴(kuò)展正則表達(dá)式 (ERE)
shell 學(xué)習(xí)第十九天----文本塊排序
shell 學(xué)習(xí)第二十一天----重新格式化段落
shell 學(xué)習(xí)三十六天----命令替換
shell 學(xué)習(xí)第二十天----sort 的其他內(nèi)容以及 uniq 命令
shell 學(xué)習(xí)四十二天----使用 touch 更新文件時(shí)間
shell 學(xué)習(xí)五十一天----top 命令查看進(jìn)程列表
shell 學(xué)習(xí)第一天
shell 學(xué)習(xí)五十四天----進(jìn)程系統(tǒng)調(diào)用的追蹤 strace
shell 學(xué)習(xí)五十天----查看進(jìn)程 ps 命令
shell 學(xué)習(xí)第二十七天----退出狀態(tài)和 if 語(yǔ)句
shell 學(xué)習(xí)第二十三天----打印
shell 學(xué)習(xí)三十三天----關(guān)于重定向
shell 學(xué)習(xí)四十九天----進(jìn)程建立
shell 學(xué)習(xí)第三十天----break,continue,shift,getopts
shell 學(xué)習(xí)五十五天----進(jìn)程記賬
shell 學(xué)習(xí)總結(jié)一
shell 學(xué)習(xí)第二十六天----變量與算數(shù)
shell 學(xué)習(xí)第二十二天----計(jì)算行數(shù), 字?jǐn)?shù)以及字符數(shù)
shell 學(xué)習(xí)五十八天----/proc 文件系統(tǒng)
shell 學(xué)習(xí)第二十五天----神器的管道符
shell 學(xué)習(xí)第三十二天----read 讀取一行
sheel 學(xué)習(xí)第三天
shell 學(xué)習(xí)----小結(jié)
shell 學(xué)習(xí)第十八天----文本排序
shell 學(xué)習(xí)第三十一天----函數(shù)問(wèn)題
shell 學(xué)習(xí)第十天----sed 查找與替換
shell 學(xué)習(xí)四十三天----臨時(shí)性文件的建立與使用
shell 學(xué)習(xí)四十七天----文件比較 cmp,diff,patch
shell 學(xué)習(xí)三十四天----printf 詳解
shell 學(xué)習(xí)五十七天 ----linux 任務(wù)管理,針對(duì)上一講的總結(jié)和擴(kuò)展
shell 學(xué)習(xí)第六天----小結(jié)
shell 學(xué)習(xí)第十三天----sed 案例分析
shell 學(xué)習(xí)第七天----基礎(chǔ)正則表達(dá)式 (BRE)
shell 學(xué)習(xí)第十二天----行與字符串
shell 學(xué)習(xí)小結(jié)四
shell 學(xué)習(xí)第二十九天----循環(huán)
shell 學(xué)習(xí)五十二天----刪除進(jìn)程 kill 命令
shell 學(xué)習(xí)五十六天----延遲進(jìn)程調(diào)度
shell 學(xué)習(xí)第四天----華麗的 printf 輸出
shell 學(xué)習(xí)第十五天----join 連接字段
shell 學(xué)習(xí)完結(jié)篇----希望你能看到
shell 學(xué)習(xí)第二天
shell 學(xué)習(xí)五十三天----捕獲信號(hào) trap

shell 學(xué)習(xí)五十天----查看進(jìn)程 ps 命令

shell 學(xué)習(xí)五十天----查看進(jìn)程 ps 命令

進(jìn)程列表

  • 列出進(jìn)程中最重要的命令便是進(jìn)程狀態(tài)命令:ps
  • ps 命令是進(jìn)程狀態(tài) (Process Status) 的縮寫(xiě)。ps 命令用來(lái)列出系統(tǒng)中當(dāng)前運(yùn)行的那些進(jìn)程。ps 命令列出的是當(dāng)前那些進(jìn)程的快照,就是執(zhí)行 ps 命令的那個(gè)時(shí)刻的那些進(jìn)程,如果想要?jiǎng)討B(tài)的顯示進(jìn)程信息,就可以使用 top 命令。

要對(duì)進(jìn)程進(jìn)行檢測(cè)和控制,首先必須要了解當(dāng)前進(jìn)程的情況,也就是需要查看當(dāng)前進(jìn)程,而 ps 命令就是最基本同時(shí)也是非常強(qiáng)大的進(jìn)程查看命令。 使用該命令可以確定有哪些進(jìn)程正在運(yùn)行和運(yùn)行的狀態(tài),進(jìn)程是否結(jié)束,進(jìn)程有沒(méi)有僵尸,哪些進(jìn)程占用了過(guò)多的資源等等。 總之大部分信息都是可以通過(guò)執(zhí)行該命令得到的。

ps 為我們提供了進(jìn)程的一次性 (不要給性加重音) 的查看,他所提供的查看結(jié)果并不動(dòng)態(tài)連續(xù);如果想對(duì)進(jìn)程進(jìn)行時(shí)間監(jiān)控,應(yīng)該使用 top 工具。

  • kill 命令用來(lái)殺死進(jìn)程

Linux 上進(jìn)程有五種狀態(tài)

  1. 運(yùn)行 (正在運(yùn)行或在運(yùn)行隊(duì)列中的等待)
  2. 中斷 (休眠中,受阻,在等待某個(gè)條件的形成或接收到信號(hào))
  3. 不可中斷 (收到信號(hào)不喚醒和不可運(yùn)行,進(jìn)程必須等待直到有中斷發(fā)生)
  4. 僵尸 (進(jìn)程已終止,但進(jìn)程描述符存在,直到父進(jìn)程調(diào)用 wait() 系統(tǒng)調(diào)用后釋放)
  5. 停止 (進(jìn)程收到 SIGSTOP,SIGSTPSIGTIN,SIGTOU 信號(hào)后停止運(yùn)行)

ps 工具標(biāo)識(shí)進(jìn)程的物種狀態(tài)碼:

狀態(tài)碼
說(shuō)明
D
不可中斷
R
運(yùn)行
S
中斷
T
停止
Z
僵尸

ps 詳解:

  1. 命令格式: ps [參數(shù)]
  2. 功能 用來(lái)顯示當(dāng)前進(jìn)程的狀態(tài)
  3. 命令參數(shù) ```參數(shù) 說(shuō)明 a 顯示所有進(jìn)程 -a 顯示統(tǒng)一終端下的所有程序 -A 顯示所有進(jìn)程 c 顯示進(jìn)程的真實(shí)名稱 -N 反向選擇 -e 等于”-A” e 顯示環(huán)境變量 f 顯示程序間的關(guān)系 -H 顯示樹(shù)狀結(jié)構(gòu) r 顯示當(dāng)前中斷的進(jìn)程 T 顯示當(dāng)前終端的所有進(jìn)程 u 指定用戶的所有進(jìn)程 -au 顯示較詳細(xì)的資訊 -aux 顯示所有包含其他使用者的進(jìn)程 -C< 命令 > 列出指定命令的狀態(tài) --lines< 行數(shù) > 每頁(yè)顯示的行數(shù) --width< 字符數(shù) > 每頁(yè)顯示的字符數(shù) --help 顯示幫助信息 --version 顯示版本信息
  4. 簡(jiǎn)單的使用

案例 1:顯示所有進(jìn)程:

#ps -A \ PID TTY TIME CMD 1 ? 00:00:04 init 2 ? 00:00:00 kthreadd 3 ? 00:00:00 migration/0 省略部分結(jié)果

案例 2:顯示指定用戶信息:

\#ps -u root PID TTY TIME CMD 1 ? 00:00:04 init 2 ? 00:00:00 kthreadd 3 ? 00:00:00 migration/0 省略部分結(jié)果

案例 3:顯示所有進(jìn)程信息,連同命令行

\#ps -ef UID PID PPID C STIME TTY TIME CMD root 1 0 0 19:45 ? 00:00:04 /sbin/init root 2 0 0 19:45 ? 00:00:00 [kthreadd] root 3 2 0 19:45 ? 00:00:00 [migration/0] root 4 2 0 19:45 ? 00:00:00 [ksoftirqd/0] 省略部分結(jié)果

案例 4:psgrep 常用組合用法,查找特定進(jìn)程

命令: \#ps -ef|grep ssh root 1358 1 0 19:46 ? 00:00:00 /usr/sbin/sshd root 1650 1358 0 19:47 ? 00:00:00 sshd:root@pts/0 root 3598 1652 0 21:27 pts/0 00:00:00 grep ssh

案例 5:將目前屬于您自己這次登入的 PID 與相關(guān)信息列出

\#ps -l F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD 4 S 0 1652 1650 0 80 0 - 27116 wait pts/0 00:00:00 bash 4 R 0 3600 1652 0 80 0 - 27033 - pts/0 00:00:00 ps

分析說(shuō)明:各相關(guān)信息的意義:

  • F 代表這個(gè)程序的標(biāo)識(shí) (flag),4 代表使用者為 super user
  • S 代表這個(gè)程序的狀態(tài) (STAT)。
  • UID:程序被該 UID 所擁有
  • PID:就是這個(gè)程序的 ID
  • PPID:則是其上級(jí)父程序的 ID
  • C:CPU 使用的資源百分比
  • PRI:這個(gè)是 Priority(優(yōu)先執(zhí)序行) 的縮寫(xiě)
  • NI:這個(gè)是 nice 值
  • ADDR:這個(gè)是 kernel function,指出該程序在內(nèi)存的那個(gè)部分。 如果是個(gè) running 的程序,一般就是”-”。
  • SZ:使用掉的內(nèi)存大小
  • WCHAN:目前這個(gè)程序是否正在運(yùn)作當(dāng)中,若為 - 表示正在運(yùn)作
  • TTY:登入這的終端機(jī)位置
  • TIME:使用掉的 CPU 時(shí)間
  • CMD:所下達(dá)的指令為何

在預(yù)設(shè)的情況下,ps 僅會(huì)列出與目前所在的 bash shell 有關(guān)的 PID 而已,所以當(dāng)我們使用 ps -l 的時(shí)候,只有三個(gè) PID。

案例 6:列出目前所有的正在內(nèi)存當(dāng)中的程序

\#ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.0 19356 1612 ? Ss 19:45 0:04 /sbin/init root 2 0.0 0.0 0 0 ? S 19:45 0:00 [kthreadd] root 3 0.0 0.0 0 0 ? S 19:45 0:00 [migration/0] 省略部分結(jié)果

分析說(shuō)明:

  • USER:該 process 是屬于哪個(gè)使用者賬號(hào)的
  • PID:該 process 的號(hào)碼
  • %CPU:該 process 使用掉的 CPU 資源百分比
  • %MEM:該 process 所占用的物理內(nèi)存百分比
  • VSZ:該 process 使用掉的虛擬內(nèi)存量 (kb)
  • RSS:該 process 占用的固定的內(nèi)存量 (kb)
  • TTY:該 process 是在哪個(gè)終端機(jī)上運(yùn)行,若與終端機(jī)無(wú)關(guān),則顯示 ? ,另外,tty1-tty6 表示本機(jī)上的登入者程序,若為 pts/0 等等,則表示為由網(wǎng)絡(luò)接進(jìn)主機(jī)的程序。
  • STAT:該程序目前的狀態(tài),主要狀態(tài)有:R(該程序目前正在運(yùn)行,或者是可被運(yùn)行),S(該程序目前正在睡眠中,但可被某些訊號(hào)喚醒),T(該程序應(yīng)該已經(jīng)終止,但是其父進(jìn)程卻無(wú)法正常的終止它,造成僵死程序的狀態(tài))。
  • START:該 process 被觸發(fā)啟動(dòng)的時(shí)間
  • TIME:該 process 實(shí)際使用 CPU 運(yùn)作的時(shí)間
  • COMMAND:該程序的實(shí)際命令。

案例 7:列出類似程序樹(shù)的程序顯示

\#ps -axjf Warning:bad syntax,perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ PPID PID PGID SID TTY TPGID STAT UID TIME COMMAND 0 2 0 0 ? -1 S 0 0:00 [kthreadd] 2 3 0 0 ? -1 S 0 0:00 \_ [migration/0] 2 4 0 0 ? -1 S 0 0:00 \_ [ksoftirqd/0] 2 5 0 0 ? -1 S 0 0:00 \_ [migration/0]

其他案例:

使用:
\#ps -aux|more // 實(shí)現(xiàn)分頁(yè)查看

使用:
\#ps -aux>test.txt // 把所有進(jìn)程顯示出來(lái),并輸出到 test.txt 文件

使用:
\#ps -o pid,ppid,pgrp,session,tpgid,comm// 輸出指定的字段 PID PPID PGRP SESS TPGID COMMAND 1556 1554 1556 1556 1582 bash 1582 1556 1582 1556 1582 ps