Linux中查看進程與日志


 

Linux盡管使用頻繁,仍然每次都還是需要到處去找相關的命令,如進程,日志之類的,既然這樣不妨自己紀錄下便於下次使用

 

 

一、查看進程

一、ps(Process Status)

首先我們要了解 Linux中查看進程信息的基本命令 ps、top,其中ps(Process Status)查看的是進程信息的一個快照,顯示的我們執行ps這個命令時進程的信息,top顯示的是進程的動態信息,使用這個命令會看到進程信息的動態變化。

二、ps -ef|grep

ps -ef|grep *** 查看某個進程

 

 

很多時候我們在linux 中運行玩一個應用是需要知道他是否成功

比如我們 進入tomcat > bin 目錄下
執行./startup.sh啟動tomcat

    [root@localhost bin]# ./startup.sh

 

然后想要查看當前的tomcat 進程是否啟動, 你們就需要ps了

[root@localhost bin]# ps -ef|grep tomcat

 

運行如:
在這里插入圖片描述

三、 ps -l

ps -l 列出與 本次登錄系統 有關的進程信息
ps ( ps -l, 列出的是詳細信息 )

運行如:
在這里插入圖片描述


其他相關參數:


F 代表這個程序的旗標 (flag), 4 代表使用者為 superuser;
S代表這個程序的狀態 (STAT);
( 常見的進程的 STAT 如下:
R 運行 Runnable (on run queue) 正在運行或在運行隊列中等待,
S 睡眠 Sleeping 休眠中, 受阻, 在等待某個條件的形成或接受到信號,
I 空閑 Idle ,
Z 僵死 Zombie(a defunct process) 進程已終止, 但進程描述符存在, 直到父進程調用wait4()系統調用后釋放,
D 不可中斷 Uninterruptible sleep (ususally IO) 收到信號不喚醒和不可運行, 進程必須等待直到有中斷發生,
T 終止 Terminate 進程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信號后停止運行運行,
P 等待交換頁 ,
W無駐留頁 has no resident pages 沒有足夠的記憶體分頁可分配,
X 死掉的進程 ,
<高優先級進程 高優先序的進程 ,
N 低優先 級進程 低優先序的進程 ,
L 內存鎖頁 Lock 有記憶體分頁分配並縮在記憶體內 ,
s進程的領導者(在它之下有子進程),
l 多進程的(使用 CLONE_THREAD, 類似 NPTL pthreads)

四、ps -aux

1、ps -aux 列出在內存中運行的 全部進程信息

運行如:
在這里插入圖片描述

2、 ps -aux | grep *** 列出 某個 進程的詳細信息

運行如:
在這里插入圖片描述

其中每一項參數對應的實際意義
如:

[root@localhost logs]# ps -aux
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0 194128  7272 ?        Ss   Jun24   0:43 /usr/lib/systemd/systemd --switched-root --system --deserialize 22

 

USER:進程的所屬用戶,
PID :進程的進程ID號,
%CPU :進程占用的 CPU資源 百分比,
%MEM :進程占用的 物理內存 百分比,
VSZ :進程使用掉的虛擬內存量 (Kbytes) ,
RSS :進程占用的固定的內存量 (Kbytes) ,
TTY :與進程相關聯的終端(tty),?代表無關,tty1-tty6是本機上面的登入者程序,pts/0表示為由網絡連接進主機的程序。
STAT :進程的狀態,具體見2.1列出來的部分 ,
START :進程開始創建的時間 ,
TIME :進程使用的總cpu時間,
COMMAND: 進程對應的實際程序。

五、 ps to

ps top動態顯示內存中的進程信息(top)

 

運行如:
在這里插入圖片描述

六、 kill -9 pid

kill -9 pid 殺死進程

 


其他相關操作

其中pid 對應的是每個進程的編號

比如查看tomcat 對應進程號
可以通過[root@localhost logs]# ps -aux|grep tomcat或者 [root@localhost logs]# ps -ef|grep tomcat進行進程查詢

運行如:
在這里插入圖片描述
如果想強行關閉 root 6722 43589 0 19:22 pts/1 00:00:00 grep --color=auto tomcat 就可以執行kill -9 6722 來強行殺掉改進程
注: 有些進程是不允許停止的,因為停止會造成系統的不穩定,甚至崩潰。

二、查看日志

一、tail -f catalina.out

很多時候需要知道一個程序運行后的一下信息,如tomcat 后的項目接口調用情況

  1. 進入tomcat > bin 目錄下
    執行./startup.sh 啟動tomcat

    運行如:
    在這里插入圖片描述

  2. 查看tomcat啟動日志

1、先切換到:cd 當前的tomcat目錄/logs

2、tail -f catalina.out 或者指定查多少行:tail -200 catalina.out

[root@localhost apache-tomcat-9.0.31]# cd logs
[root@localhost logs]# tail -f catalina.out

 

運行如:在這里插入圖片描述

[root@localhost logs]# tail -f -n 200  catalina.out

 

運行如:在這里插入圖片描述


比如每次的tomcat 關閉也可以清楚看到:在這里插入圖片描述

二、tail 參數

查看看日志參數:

-f循環讀取

-q不顯示處理信息

-v顯示詳細的處理信息

-c<數目> 顯示的字節數

-n<行數> 顯示行數

--pid=PID 與-f合用,表示在進程ID,PID死掉之后結束.

-q, --quiet, --silent從不輸出給出文件名的首部

-s, --sleep-interval=S-f 合用,表示在每次反復的間隔休眠S秒

三、關鍵詞高亮顯示

 tail -n 200 -f dpe_partner_all.log | perl -pe 's/(關鍵詞)/\e[1;31m$1\e[0m/g'

 

例如高亮顯示ERROR

tail -n 200 -f dpe_partner_all.log | perl -pe 's/(ERROR)/\e[1;31m$1\e[0m/g'

 

先看看我們目前有哪些日志文件了
在這里插入圖片描述

假如我要查看catalina.out 文件,同時高亮顯示 java.lang.IllegalArgumentException,那么就可以這樣:

tail -n 200 -f  catalina.out| perl -pe 's/(java.lang.IllegalArgumentException)/\e[1;31m$1\e[0m/g'

 

運行如:
在這里插入圖片描述

好了個人基本 操作紀錄完畢,下次再會哈哈^_^,歡迎加群一起交流入群一起交流

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM