你知道這linux幾個核心命令嗎?

你知道這linux幾個核心命令嗎?

找工作的時候,熟悉linux操作系統是一項不可或缺的技能。熟記幾個關鍵的linux命令,可以以不變應萬變

top命令

Linux top命令用於實時顯示進程的動態

命令參數

d : 改變顯示的更新速度
n : 更新的次數,完成後將會退出 top
p : 指定查看的進程號

實例

#顯示進程信息
top

#設置信息更新次數,表示更新兩次後終止更新顯示
top -n 2

設置信息更新時間, 表示更新週期爲3秒
top -d 3

顯示指定的進程信息,顯示進程號爲139的進程信息,CPU、內存佔用率等
top -p 139

執行一次簡單的top命令後,linux的輸出

PID 進程的ID
USER 進程所有者
PR 進程的優先級別,越小越優先被執行
NI 進程Nice值,代表這個進程的優先值
VIRT 進程佔用的虛擬內存
RES 進程佔用的物理內存
SHR 進程使用的共享內存
S 進程的狀態。S表示休眠,R表示正在運行,Z表示僵死狀態
%CPU 進程佔用CPU的使用
%MEM 進程使用的物理內存和總內存的百分
TIME+ 該進程啓動後佔用的總的CPU時間,即佔用CPU使用時間的累加值
COMMAND 啓動該進程的命令名稱

PS命令

-a  顯示所有進程
-e  顯示所有進程
-f  顯示UID,PPIP,C與STIME欄位。
-p  <進程識別碼>  指定進程識別碼,並列出該進程的狀況。
-t  <終端機編號>  指定終端機編號,並列出屬於該終端機的進程的狀況。
-u  <用戶識別碼>   顯示該用戶下所有進程
-u  不加參數的-u,以用戶爲主的格式來顯示進程狀況。

ps -ef以標準格式輸出進程詳細信息

UID 用戶ID
PID 進程
PPID 父進程ID
C CPU用於計算執行優先級的因子。數值越大,表明進程是CPU密集型運算,執行優先級會降低;數值越小,表明進程是I/O密集型運算,執行優先級會提高
STIME 進程啓動時間
TTY 完整的終端名稱
TIME 佔用CPU時間
CMD 完整的啓動進程所用的命令和參數

ps -aux 以BSD格式顯示進程詳細信息


表中未列出的參數,與上表意義相同。

%CPU 進程佔用CPU百分比
%MEM 進程佔用內存
NI 進程的NICE值,數值大,表示較少佔用CPU時間
VSZ 進程使用的虛擬內存量(KB)
RSS 進程佔用的固定內存量(KB)(駐留中頁的數量)
STAT 進程狀態
START 進程開始時間

netstat命令

netstat命令用於顯示與IP、TCP、UDP和ICMP協議相關的統計數據,一般用於檢驗本機各端口的網絡連接情況。netstat是在內核中訪問網絡及相關信息的程序,它能提供TCP連接,TCP和UDP監聽,進程內存管理的相關報告。

命令參數

-a或–all 顯示所有連線中的Socket。。

-l或–listening 顯示監控中的服務器的Socket。

-n或–numeric 直接使用IP地址,而不通過域名服務器。

-t或–tcp 顯示TCP傳輸協議的連線狀況。

-u或–udp 顯示UDP傳輸協議的連線狀況。

-p或–programs 顯示正在使用Socket的程序識別碼和程序名稱。

實例一:無參數使用

netstat輸出結果可以分爲兩部分

  • Active Internet connections, 有源TCP連接, Recv-Q和Send-Q一般爲零,如果不是則表示軟件包正在隊列中堆積。這種情況只能在非常少的情況見到。

    Proto Recv-Q Send-Q
    連接協議 接收隊列 發送隊列
  • Active UNIX domain socket,有源Unix域套接口

    Proto RefCnt Types State path
    連接協議 連接到本套接口上的進程號 套接口 套接口當前狀態 連接到套接口進程使用的路徑

實例二:列出所有端口

顯示一個所有的有效連接信息列表,包括已建立連接、監聽連接

命令:netstat -a

實例三: 顯示當前UDP連接情況

命令:netstat -nu

實例四: 顯示UDP端口號使用情況

命令:netstat -apu

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章