程序和進程的關係vim
一、保存在硬盤、光盤等介質中的可執行代碼和數據
二、靜態保存的代碼
進程
一、 在CPU及內存中運行的程序代碼
二、動態執行的代碼
三、父、子進程:每一個進程能夠建立一個或多個進程ide
ps命令-查看靜態的進程信息
a:查看當前系統的全部進程
u:指定用戶
x:該用戶在全部終端下的進程
-e:顯示系統內的全部進程信息
-l:使用長格式顯示進程信息
-f:使用完整的格式顯示進程信息
例如
命令ps-aux:簡單列表的形式顯示出進程信息
命令ps-elf:以長格式顯示系統中的進程信息,輸出信息還包括PPID列
實際操做
一、用ps-aux查看當前root的靜態進程。
其中USER指當前用戶;PID 爲進程號(PID爲1的是init); %CPU、%MEN指cpu的佔用率、內存佔用率;VSZ、RSS爲虛擬內存、物理內存佔用;TTY : 終端(?爲未知、大多本地加載爲?);STAT : 當前進程狀態(S可中斷休眠進程、D不可中斷休眠進程、s父進程、<表明優先級高、R運行進程、l表明多線性、N優先級低、Z殭屍進程、+前臺進程);START:爲啓動時間;Time:進程佔用CPU的總時間;Command :進程名稱。
二、用ps-elf查看當前root的靜態進程測試
top命令-查看動態的進程信息命令行
一、 動態信息3s刷新一次
二、顯示Tasks、cpu佔用、內存佔用(Mem)、交換空間(Swap)等彙總信息
實際操做3d
pgrep命令-查詢進程信息
根據特定條件查詢進程PID信息
pgrep-l:同時輸出對應的進程名(不然只輸出PID號,不便於操做)
pgrep -l -U:查詢指定用戶的進程code
pstree命令-查看進程樹
可輸出Linux系統中各進程的樹形結構
-a:顯示完整信息
-u:列出對應用戶名
-p:列出對應PID號
實際操做
一、pstree -aup:查看以樹形結構顯示的進程(用戶必須處於登陸狀態)
二、指定用戶的樹形結構進程blog
1.進程的啓動方式遞歸
手工啓動
調度啓動
(1)手工啓動
前臺啓動:用戶輸入命令,直接執行程序
後臺啓動:在命令行尾加入「&」符號
(2)調度啓動
使用at命令,設置一次性計劃任務
使用crontab命令,設置週期性計劃任務
實際操做
一、先把sr0掛載到mnt目錄下,將mnt下的packages複製到opt目錄下,因爲件大小爲4.3G,複製過程時間比較長,在命令末尾處加&符號,複製過程轉到後臺運行。而且不會影響對其它命令的操做。進程
二、 命令jobs -l查看後臺運行進程,即複製操做已完成crontab
改變進程的運行方式
(1)Ctrl + Z組合鍵
將當前進程掛起,即調入後臺並中止執行
(2)jobs命令
查看處於後臺的任務列表
(3)fg命令
將後臺進程恢復到前臺運行,可指定任務序號
實際操做
將目前進程掛起,即調到後臺中止。
終止進程執行
Ctrl + C組成鍵
中斷正在執行的命令
(1)使用kill命令終止進程
Kill、killall命令
Kill用於終止指定PID號的進程
Killall用於終止指定名稱的全部進程
-9選項用於強制終止
(2)使用pkill命令終止進程
pkill命令
根據特定條件終止相應的進程
經常使用命令選項
實際操做
一、kill -9 18640 終止進程
二、killall -9 vim 終止全部進程
三、pkill -9 -U 強制註銷用戶·
at命令
一、只在指定的時間點執行一次,前提是對應的系統服務atd必須已經運行
二、一次性計劃任務樣式
實際操做
首先用data獲取實時時間,設置16:12的定時任務,任務設爲定時統計當前全部進程的數量,並把數量寫入ps文本當中,最後用ctrl + d組合鍵提交任務
atq查看一次任務
Crontab週期服務設置
Crontab的配置文件和目錄
按照預先設置的時間週期重複執行用戶指定的命令操做
屬於週期計劃任務
主要設置文件
全局配置文件,位於文件:/etc/crontab
系統默認的設置,位於目錄:/etc/cron.*/
用戶定義的設置,位於文件:/var/spool/cron/用戶名
2.使用crontab命令管理用戶的計劃任務
crontab 選項 [-u 用戶名]
經常使用選項以下:
-e:編輯計劃任務列表
-u:指定所管理的計劃任務屬於哪一個用戶,默認時針對當前用戶(本身)
-l:列表顯示計劃任務
-r:刪除計劃任務列表 **實際操做**
一、查看crontab配置文件
二、低權限用戶有些週期性務沒法執行,輸入crontab -e編輯計劃任務列表
三、來作一個測試,輸入命令,使zhangsan目錄下的數據文件在天天16:33時間點遞歸複製到opt目錄下
四、編輯完成後保存退出,命令crontab -l查看任務列表