ps 命令的作用是顯示進(jìn)程信息的;
目前成都創(chuàng)新互聯(lián)已為數(shù)千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間、網(wǎng)站改版維護(hù)、企業(yè)網(wǎng)站設(shè)計(jì)、清澗網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
| 符號,是個(gè)管道符號,表示ps 和 grep 命令同時(shí)執(zhí)行;
grep 命令是查找(Global Regular Expression Print),能使用正則表達(dá)式搜索文本,然后把匹配的行顯示出來;
ps命令有一些參數(shù):
-e : 顯示所有進(jìn)程
-f : 全格式
-h : 不顯示標(biāo)題
-l : 長格式
-w : 寬輸出
a :顯示終端上的所有進(jìn)程,包括其他用戶的進(jìn)程。
r :只顯示正在運(yùn)行的進(jìn)程。
u :以用戶為主的格式來顯示程序狀況。
x :顯示所有程序,不以終端機(jī)來區(qū)分。
結(jié)果信息從前到后依次是:
UID PID PPID C STIME TTY TIME CMD
zzw 14124 13991 0 00:38 pts/0 00:00:00 grep –color=auto dae
Linux中的top命令顯示系統(tǒng)上正在運(yùn)行的進(jìn)程。它是系統(tǒng)管理員最重要的工具之一。被廣泛用于監(jiān)視服務(wù)器的負(fù)載。top命令是一個(gè)交互命令。在運(yùn)行top的時(shí)候還可以運(yùn)行很多命令。
N – 以 PID 的大小的順序排列表示進(jìn)程列表
P – 以 CPU 占用率大小的順序排列進(jìn)程列表
M – 以內(nèi)存占用率大小的順序排列進(jìn)程列表
q – 退出 top
h – 幫助
1 系統(tǒng)運(yùn)行時(shí)間和平均負(fù)載
這些字段顯示:當(dāng)前時(shí)間、系統(tǒng)已運(yùn)行的時(shí)間、當(dāng)前登錄用戶的數(shù)量、相應(yīng)最近5、10和15分鐘內(nèi)的平均負(fù)載。
2 任務(wù)
第二行顯示的是任務(wù)或者進(jìn)程的總結(jié)。進(jìn)程可以處于不同的狀態(tài)。這里顯示了全部進(jìn)程的數(shù)量。除此之外,還有正在運(yùn)行、睡眠、停止、僵尸進(jìn)程的數(shù)量(僵尸是一種進(jìn)程的狀態(tài))。這些進(jìn)程概括信息可以用’t’切換顯示。
3 CPU 狀態(tài)
下一行顯示的是CPU狀態(tài)。 這里顯示了不同模式下的所占CPU時(shí)間的百分比。這些不同的CPU時(shí)間表示:
us, user: 運(yùn)行(未調(diào)整優(yōu)先級的) 用戶進(jìn)程的CPU時(shí)間
sy,system: 運(yùn)行內(nèi)核進(jìn)程的CPU時(shí)間
ni,niced:運(yùn)行已調(diào)整優(yōu)先級的用戶進(jìn)程的CPU時(shí)間
wa,IO wait: 用于等待IO完成的CPU時(shí)間
hi:處理硬件中斷的CPU時(shí)間
si: 處理軟件中斷的CPU時(shí)間
st:這個(gè)虛擬機(jī)被hypervisor偷去的CPU時(shí)間(譯注:如果當(dāng)前處于一個(gè)hypervisor下的vm,實(shí)際上hypervisor也是要消耗一部分CPU處理時(shí)間的)。
4 內(nèi)存使用
接下來兩行顯示內(nèi)存使用率,有點(diǎn)像’free’命令。第一行是物理內(nèi)存使用,第二行是虛擬內(nèi)存使用(交換空間)。
物理內(nèi)存顯示如下:全部可用內(nèi)存、已使用內(nèi)存、空閑內(nèi)存、緩沖內(nèi)存。相似地:交換部分顯示的是:全部、已使用、空閑和緩沖交換空間。
5 各列的意思
PID 進(jìn)程ID,進(jìn)程的唯一標(biāo)識符
USER 進(jìn)程所有者的實(shí)際用戶名。
PR 進(jìn)程的調(diào)度優(yōu)先級。這個(gè)字段的一些值是’rt’。這意味這這些進(jìn)程運(yùn)行在實(shí)時(shí)態(tài)。
NI 進(jìn)程的nice值(優(yōu)先級)。越小的值意味著越高的優(yōu)先級。
VIRT 進(jìn)程使用的虛擬內(nèi)存。
RES 駐留內(nèi)存大小。駐留內(nèi)存是任務(wù)使用的非交換物理內(nèi)存大小。
SHR SHR是進(jìn)程使用的共享內(nèi)存。
S 這個(gè)是進(jìn)程的狀態(tài)。它有以下不同的值:
D – 不可中斷的睡眠態(tài)。
R – 運(yùn)行態(tài)
S – 睡眠態(tài)
T – 被跟蹤或已停止
Z – 僵尸態(tài)
%CPU 自從上一次更新時(shí)到現(xiàn)在任務(wù)所使用的CPU時(shí)間百分比。
%MEM 進(jìn)程使用的可用物理內(nèi)存百分比。
TIME+ 任務(wù)啟動后到現(xiàn)在所使用的全部CPU時(shí)間,精確到百分之一秒。
COMMAND 運(yùn)行進(jìn)程所使用的命令。
注意 :不同發(fā)行版的top命令在各種細(xì)節(jié)有不同,如果發(fā)現(xiàn)不同時(shí),請讀你的幫助手冊和命令內(nèi)的幫助。)
kill、kill-15、kill-9區(qū)別:
執(zhí)行kill(默認(rèn)kill -15)命令,系統(tǒng)會發(fā)送一個(gè)SIGTERM信號給對應(yīng)的程序,大部分程序接收到SIGTERM信號后,會先釋放自己的資源,然后再停止。用法kill pid。
kill -15 pid。
kill -9命令,系統(tǒng)給對應(yīng)程序發(fā)送的信號是SIGKILL,即exit。exit信號不會被系統(tǒng)阻塞,所以kill -9能順利殺掉進(jìn)程。用法kill -9 pid。
tail -n 1000:顯示最后1000行
tail -n +1000:從1000行開始顯示,顯示1000行以后的
head -n 1000:顯示前面1000行
cat a.txt 顯示文件
vim xx.conf 編輯文件
打開文件后,按insert鍵進(jìn)入編輯模式;編輯完后,按esc建退出編輯模式;按shift+冒號后,輸入wq保存退出,wq!保存強(qiáng)制退出,q不保存退出
在根目錄模糊查找名字含java的文件
服務(wù)器端常有很多壓縮過的日志文件,當(dāng)需要查找日志中某些特定信息的時(shí)候,為了避免解壓文件,可以使用zgrep,zcat等命令查找、查看壓縮文件中的信息
zgrep ' 輸入你要查找的東東' /目錄 /文件 .gz 或者.log (當(dāng)日)
grep ' 輸入你要查找的東東' /目錄 /文件 .gz 或者.log (非當(dāng)日的壓縮文件)
例如: zgrep 'callMktCamLoad' app.log.2019-12-03-*.gz
rpm包安裝的,可以用 rpm -qa 看到,如果要查找某軟件包是否安裝,用 rpm -qa | grep "軟件或者包的名字"
以deb包安裝的,可以用 dpkg -l 看到。如果是查找指定軟件包,用 dpkg -l | grep "軟件或者包的名字"
yum方法安裝的,可以用 yum list installed 查找,如果是查找指定包,用 yum list installed | grep "軟件名或者包名"
linux命令有內(nèi)部命令和外部命令之分。內(nèi)部命令實(shí)際上是shell程序的一部分,其中包含的是一些比較簡練的linux系統(tǒng)命令,這些命令由shell程序識別并在shell程序內(nèi)部完成運(yùn)行,通常在linux系統(tǒng)加載運(yùn)行時(shí)shell就被加載并駐留在系統(tǒng)內(nèi)存中。外部命令是linux系統(tǒng)中的實(shí)用程序部分,因?yàn)閷?shí)用程序的功能通常都比較強(qiáng)大,所以它們包含的程序量也會很大,在系統(tǒng)加載時(shí)并不隨系統(tǒng)一起被加載到內(nèi)存中,而是在需要時(shí)才將其調(diào)進(jìn)內(nèi)存。通常外部命令的實(shí)體并不包含在shell中,但是其命令執(zhí)行過程是由shell 程序控制的。shell程序管理外部命令執(zhí)行的路徑查找、加載存放,并控制命令的執(zhí)行。
在linux系統(tǒng)中有這兩個(gè)命令 ctrl+z 和ctrl+c ,這兩個(gè)命令輸入之后看起來結(jié)果差不多,實(shí)質(zhì)是不同的。
他們都有中斷命令的效果,但是作用是不一樣的。
ctrl+c是強(qiáng)制終止程序的執(zhí)行并結(jié)束進(jìn)程。而ctrl+z則只是中斷任務(wù)的執(zhí)行,但該任務(wù)并沒有被結(jié)束。
它只是在進(jìn)程中維持掛起的狀態(tài),用戶可以使用fg/bg命令來繼續(xù)前臺/后臺執(zhí)行該任務(wù)。fg命令會重啟
前臺被中斷的任務(wù),bg命令會把中斷的任務(wù)放到后臺執(zhí)行。
你也可以使用bg這樣的方法讓一個(gè)前臺執(zhí)行的任務(wù)切換到后臺去執(zhí)行。
也可以使用fg這樣的方法讓一個(gè)后臺執(zhí)行的任務(wù)切換到前臺去執(zhí)行。
還有一個(gè)最常用的方法是
在一行命令的最后輸入,可以讓這行命令放到后臺去運(yùn)行。
使用jobs命令查看當(dāng)前有多少后臺程序在運(yùn)行。