程序管理
重點:一、pkill用於殺死一類程序,比如下面強殺wang的程序
pkill -9 -u wang
二、killall也可以殺一類程序(預設可能沒有),比如殺nginx程序
killall nginx
三、kill -0和kill -1要知道啥意思
kill -0 pid一般用來檢測某程序是否存貨,不過pid不確定,一般用killall -0 name;指令碼中經常用這個檢查某個程序在不在
killall -1 name用於讓程式重讀配置檔案,比如修改了某程式的配置檔案,可以用此法重讀配置檔案
四、有時候需要獲取所有程序中占用記憶體或cpu最高的乙個:
ps aux k %mem 或者 ps aux k %cpu最後乙個便是
五、關於管道的特點
管道很重要的乙個特點就是會開啟乙個子shell,可以想想子shell可以繼承父shell哪些屬性,fork炸dan,bomb等
六、ps1,ps2,ps3,ps4
ps1是命令提示符
ps2是多行輸入比如cat tee重定向前面的提示符,
ps3是shell指令碼中select的提示符
ps4很少用,別記了
七、程序管理工具要熟練掌握幾個:
lsof iftop等
八、程式並行執行
&符號,&可以開啟乙個子程序
比如使用ping命令掃區域網可以ping通的機器
九、screen不間斷會話
除了screen還可以用nohub command &來實現,可以看之前的筆記
還有嗎?後續補充
1、ps aux
比較常用
a 選項包括所有終端中的程序
x 選項包括不鏈結終端的程序
u 選項顯示程序所有者的資訊
2、ps -ef
檢視所有程序,父程序,子程序,比較常用
3、 ps axo pid,cmd,psr,ni,pri,%mem,%cpu
指定顯示哪些東西,可以使用ps l檢視支援哪些內容的顯示
4、還可以排序:k選項
按cpu排序
[root@linux1 ~]# ps axo pid,cmd,psr,ni,pri,%mem,%cpu k %cpu
5、kill 12345
溫柔的殺死12345程序(正常結束程序),使用-15訊號,不寫預設就是-15,
6、kill -9 12345
強殺,某些頑固程序就得強殺
殺某一類程序,比如httpd啟動後就有好幾個程序,killall httpd就可以殺死所有httpd程序
8、pidof tail
檢視正在執行的tail命令的pid
killpidof tail
9、殭屍程序一般殺父程序解決,如果,父程序不能殺,就只能重啟系統了
10、cpu與io密集
買雲伺服器經常看到
cpu密集型是對cpu佔用率高的程序
io密集型是等待io時間長的程序
11、pgrep檢索指定型別程序,一般都是ps -ef | grep
pgrep -u root
12、kill -0
檢測程序是否存活,指令碼中有用
killall -0 httpd執行後使用$?判斷httpd是否在執行,面試可能會問
13、kill -1
重讀配置檔案
killall -1 httpd 修改httpd配置檔案後使用此命令重讀配置檔案
14、pkill
殺一類程序,比如httpd所有程序,wang使用者的所有程序
15、程式後台執行
ctrl +z程式在後台不會繼續執行
screen可以實現不間斷會話
nuhub command & >/dev/null也可以實現不間斷會話(不重定向標準輸出會列印到螢幕上)
16、管道
子shell
參考:17、程式併發執行
&開啟子shell讓程式後台執行
18、程序優先順序
nice可以修改程式優先順序
19、ps命令的o選項可k選項
o選項可以指定輸出某列(-l檢視可以輸出哪些列)k選項指定按哪一列排序,實在記不住就ps aux |sort -n -k吧
20、ss,netstat看連線數,看哪個ip連的多
21、nslookup,dig,traceroute
dns解析和路由追蹤
22、上下文是啥,高的話有啥後果
23、程式與程序與執行緒
參考:24、還有嗎?後續補充
程序管理(前面的重點必須會)
一 pkill用於殺死一類程序,比如下面強殺wang的程序 pkill 9 u wang 二 killall也可以殺一類程序 預設可能沒有 比如殺nginx程序 killall nginx 三 kill 0和kill 1要知道啥意思 kill 0 pid一般用來檢測某程序是否存貨,不過pid不確定,...
Linux 程序管理 重點
基本介紹 ps命令是用來檢視目前系統中,有哪些正在執行,以及它們執行的狀況。ps詳解 1 指令 ps aux grep 或more檢視所有程序 比如我看看有沒有sshd服務 2 指令說明 以全格式顯示當前所有的程序,檢視程序的父程序。若是某個程序執行一半需要停止時,或是已消了很大的系統資源時,此時可...
寫在前面的話
csdn開博前言 這是第一次在csdn寫博,所以將寫作的背景及原因交待一下,恐以後自己寫博的時候離題萬里,當看到這篇文章的時候明白要在這個地方留下些什麼東西。也或許有幸能被別人看到我寫的文字,也能明白我的意圖。寫這些文字的時候,我做為一名開發人員在一家軟體公司實習。能有機會從事和程式設計相關的工作心...