ps 命令的作用是顯示進程信息的;
員工經(jīng)過長期磨合與沉淀,具備了協(xié)作精神,得以通過團隊的力量開發(fā)出優(yōu)質(zhì)的產(chǎn)品。成都創(chuàng)新互聯(lián)公司堅持“專注、創(chuàng)新、易用”的產(chǎn)品理念,因為“專注所以專業(yè)、創(chuàng)新互聯(lián)網(wǎng)站所以易用所以簡單”。公司專注于為企業(yè)提供網(wǎng)站設計制作、做網(wǎng)站、微信公眾號開發(fā)、電商網(wǎng)站開發(fā),小程序定制開發(fā),軟件按需求定制設計等一站式互聯(lián)網(wǎng)企業(yè)服務。
| 符號,是個管道符號,表示ps 和 grep 命令同時執(zhí)行;
grep 命令是查找(Global Regular Expression Print),能使用正則表達式搜索文本,然后把匹配的行顯示出來;
ps命令有一些參數(shù):
-e : 顯示所有進程
-f : 全格式
-h : 不顯示標題
-l : 長格式
-w : 寬輸出
a :顯示終端上的所有進程,包括其他用戶的進程。
r :只顯示正在運行的進程。
u :以用戶為主的格式來顯示程序狀況。
x :顯示所有程序,不以終端機來區(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)上正在運行的進程。它是系統(tǒng)管理員最重要的工具之一。被廣泛用于監(jiān)視服務器的負載。top命令是一個交互命令。在運行top的時候還可以運行很多命令。
N – 以 PID 的大小的順序排列表示進程列表
P – 以 CPU 占用率大小的順序排列進程列表
M – 以內(nèi)存占用率大小的順序排列進程列表
q – 退出 top
h – 幫助
1 系統(tǒng)運行時間和平均負載
這些字段顯示:當前時間、系統(tǒng)已運行的時間、當前登錄用戶塵察慶的數(shù)量、相應最近5、10和15分鐘內(nèi)的平均負載。
2 任務
第二行顯示的是任務或者進程的總結(jié)。進程可以處于不同的狀態(tài)。派握這里顯示了全部進程沒猜的數(shù)量。除此之外,還有正在運行、睡眠、停止、僵尸進程的數(shù)量(僵尸是一種進程的狀態(tài))。這些進程概括信息可以用’t’切換顯示。
3 CPU 狀態(tài)
下一行顯示的是CPU狀態(tài)。 這里顯示了不同模式下的所占CPU時間的百分比。這些不同的CPU時間表示:
us, user: 運行(未調(diào)整優(yōu)先級的) 用戶進程的CPU時間
sy,system: 運行內(nèi)核進程的CPU時間
ni,niced:運行已調(diào)整優(yōu)先級的用戶進程的CPU時間
wa,IO wait: 用于等待IO完成的CPU時間
hi:處理硬件中斷的CPU時間
si: 處理軟件中斷的CPU時間
st:這個虛擬機被hypervisor偷去的CPU時間(譯注:如果當前處于一個hypervisor下的vm,實際上hypervisor也是要消耗一部分CPU處理時間的)。
4 內(nèi)存使用
接下來兩行顯示內(nèi)存使用率,有點像’free’命令。第一行是物理內(nèi)存使用,第二行是虛擬內(nèi)存使用(交換空間)。
物理內(nèi)存顯示如下:全部可用內(nèi)存、已使用內(nèi)存、空閑內(nèi)存、緩沖內(nèi)存。相似地:交換部分顯示的是:全部、已使用、空閑和緩沖交換空間。
5 各列的意思
PID 進程ID,進程的唯一標識符
USER 進程所有者的實際用戶名。
PR 進程的調(diào)度優(yōu)先級。這個字段的一些值是’rt’。這意味這這些進程運行在實時態(tài)。
NI 進程的nice值(優(yōu)先級)。越小的值意味著越高的優(yōu)先級。
VIRT 進程使用的虛擬內(nèi)存。
RES 駐留內(nèi)存大小。駐留內(nèi)存是任務使用的非交換物理內(nèi)存大小。
SHR SHR是進程使用的共享內(nèi)存。
S 這個是進程的狀態(tài)。它有以下不同的值:
D – 不可中斷的睡眠態(tài)。
R – 運行態(tài)
S – 睡眠態(tài)
T – 被跟蹤或已停止
Z – 僵尸態(tài)
%CPU 自從上一次更新時到現(xiàn)在任務所使用的CPU時間百分比。
%MEM 進程使用的可用物理內(nèi)存百分比。
TIME+ 任務啟動后到現(xiàn)在所使用的全部CPU時間,精確到百分之一秒。
COMMAND 運行進程所使用的命令。
注意 :不同發(fā)行版的top命令在各種細節(jié)有不同,如果發(fā)現(xiàn)不同時,請讀你的幫助手冊和命令內(nèi)的幫助。)
kill、kill-15、kill-9區(qū)別:
執(zhí)行kill(默認kill -15)命令,系統(tǒng)會發(fā)送一個SIGTERM信號給對應的程序,大部分程序接收到SIGTERM信號后,會先釋放自己的資源,然后再停止。用法kill pid。
kill -15 pid。
kill -9命令,系統(tǒng)給對應程序發(fā)送的信號是SIGKILL,即exit。exit信號不會被系統(tǒng)阻塞,所以kill -9能順利殺掉進程。用法kill -9 pid。
tail -n 1000:顯示最后1000行
tail -n +1000:從1000行開始顯示,顯示1000行以后的
head -n 1000:顯示前面1000行
cat a.txt 顯示文件
vim xx.conf 編輯文件
打開文件后,按insert鍵進入編輯模式;編輯完后,按esc建退出編輯模式;按shift+冒號后,輸入wq保存退出,wq!保存強制退出,q不保存退出
在根目錄模糊查找名字含java的文件
服務器端常有很多壓縮過的日志文件,當需要查找日志中某些特定信息的時候,為了避免解壓文件,可以使用zgrep,zcat等命令查找、查看壓縮文件中的信息
zgrep ' 輸入你要查找的東東' /目錄 /文件 .gz 或者.log (當日)
grep ' 輸入你要查找的東東' /目錄 /文件 .gz 或者.log (非當日的壓縮文件)
例如: 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 "軟件名或者包名"
方法/步驟
命令行輸入:who
先查看參數(shù)的
請點擊輸入圖片描述
命令行輸入:who -b? ?查看上次系統(tǒng)啟動的啟動時間
命令行輸入:who -r? ? 查看當前系統(tǒng)運行時間
請點擊輸入圖片描述
命令行輸入:last? reboot? ? ?查看系統(tǒng)的拆攜明歷史啟動時間
首行是近期Linux系統(tǒng)隱判啟動的時間
請點擊輸入圖片描述
命令行輸入:TOP? ? ? ? 這是查看當前系統(tǒng)運行時間
up之后是系統(tǒng)到現(xiàn)在運行了多久時間
請點擊輸入圖片描述
命令行輸入:uptime
16:17:38? ? 這是當前時間
up 后面的時間是系統(tǒng)運行時間
請點擊輸入圖片描述
命令行輸入:cat /proc/uptime? ? ? ?查看系統(tǒng)啟動到現(xiàn)在的時間和旅告系統(tǒng)空閑的時間
請點擊輸入圖片描述
對于Linux一般用戶來說,是不會去注意系統(tǒng)最后一次的重啟時間,除非是Linux工程師,如果你想要查看Linux最后重啟時間的話,小編慧卜教你三種查看系統(tǒng)重啟時間的方法。
方法前睜穗一:last命令
# last reboot
reboot system boot 2.6.32-431.el6.i Wed Jul 30 13:44 - 21:39 (46+07:55)
reboot system boot 2.6.32-431.el6.i Sun Apr 13 14:28 - 09:27 (107+18:59)
reboot system boot 2.6.32-431.el6.i Tue Mar 25 22:27 - 14:19 (18+15:52)
這條命令實際上顯示的是最近幾天的系統(tǒng)運行時間。last原本被設計來顯示某個特定用戶的登錄歷史。在Linux中,有一個特別的“偽用戶”稱為reboot會在系統(tǒng)重啟的時候立即自動登錄。這樣通過檢查reboot用戶的登錄歷史,你就可以檢查最后的重啟時間。
方法二:who -b
使用早薯who命令帶上‘-b’選項。
# who -b
system boot Jul 30 13:44
linux uptime命令主要用于獲取主機運行時間和查詢linux系統(tǒng)負載等信息。uptime命令過去只顯示系統(tǒng)運行多久?,F(xiàn)在,可以顯示系統(tǒng)已經(jīng)運行了多長時間,信息顯示依次為:現(xiàn)在時間、系統(tǒng)已經(jīng)運行了多長時間、目前有多少登陸用戶、系統(tǒng)在過去的1分鐘、5分鐘和15分鐘內(nèi)的平均負載。51CTO編輯推薦:linux監(jiān)控工具大全uptime命令用法十分簡單:直接輸入# uptime即可。輸入樣例:18:02:41 up 41 days, 23:42, 1 user, load average: 0.00, 0.00, 0.001可以被認為是最優(yōu)的負載值。負載是會隨著系統(tǒng)不同改變得。單CPU系統(tǒng)1-3和SMP系統(tǒng)6-10都是可能接受的。另外還有一個參數(shù) -V ,是用來查詢版本的。 (注意是大寫的字母v)[linux @ localhost]$ uptime -Vprocps version 3.2.7[linux @ localhost]$ uptime顯示結(jié)果為:10:19:04 up 257 days, 18:56, 12 users, load average: 2.10, 2.10,2.09顯示內(nèi)容說明:10:19:04 //系統(tǒng)當前時間up 257 days, 18:56 //主機已運行時間,時間兄州越大,說明你的機器越穩(wěn)定。12 user //用戶連接數(shù),是總連接數(shù)而不是用戶數(shù)load average // 系統(tǒng)平均兆塵臘負載,統(tǒng)計最近族滑1,5,15分鐘的系統(tǒng)平均負載那么什么是系統(tǒng)平均負載呢? 系統(tǒng)平均負載是指在特定時間間隔內(nèi)運行隊列中的平均進程數(shù)。如果每個CPU內(nèi)核的當前活動進程數(shù)不大于3的話,那么系統(tǒng)的性能是良好的。如果每個CPU內(nèi)核的任務數(shù)大于5,那么這臺機器的性能有嚴重問題。如果你的linux主機是1個雙核CPU的話,當Load Average 為6的時候說明機器已經(jīng)被充分使用了。作者開源運維研究室