1. 程式人生 > 其它 >Linux常用系統管理命令詳解

Linux常用系統管理命令詳解

ps

ps命令用於檢視系統中的程序狀態。

命令格式:ps [引數]

命令引數說明:

引數 作用
-a 顯示現行終端機下的所有程式,包括其他使用者的程式
-u 以使用者為主的格式來顯示程式狀況
-x 顯示沒有控制終端的程序,同時顯示各個命令的具體路徑
-e 列出程式時,顯示每個程式所使用的環境變數
-f 顯示當前所有的程序
-t 指定終端機編號,並列出屬於該終端機的程式的狀況

使用示例:

ps -ef | grep sshd

效果如下圖:

pidof

pidof命令用於查詢指定服務程序的PID值。

命令格式:pidof [服務名稱]

引數說明:

引數 說明
-s 僅返回一個程序號
-c 只顯示執行在root目錄下的程序,這個選項只對root使用者有效
-o 忽略指定程序號的程序
-x 顯示由指令碼開啟的程序

使用示例:

查詢出sshd服務下的所有程序ID。

pidof sshd

效果如下圖:

kill

kill命令用於終止指定PID的服務程序。

命令格式:kill [引數] [程序PID]

kill可將指定的資訊送至程式。預設的資訊為SIGTERM(15),可將指定程式終止。若仍無法終止該程式,可使用SIGKILL(9)資訊嘗試強制刪除程式。

使用示例:

刪除pid為1001的程序。

kill -9 1001

效果如下圖:

killall

killall命令用於終止指定名稱的服務對應的全部程序。

命令格式:killall [程序名稱]

使用示例:

刪除crond服務下的所有程序。

killall crond

date

date命令用於顯示和設定系統的時間和日期。

命令格式:date [選項] [+格式]

其中,時間格式的部分控制字元如下:

字元 說明
%a 當地時間的星期名縮寫(例如: 日,代表星期日)
%A 當地時間的星期名全稱 (例如:星期日)
%b 當地時間的月名縮寫 (例如:一,代表一月)
%B 當地時間的月名全稱 (例如:一月)
%c 當地時間的日期和時間 (例如:2021年1月27日 星期四 03:05:15)
%C 世紀;比如 %Y,通常為省略當前年份的後兩位數字(例如:20)
%d 按月計的日期(例如:01)
%D 按月計的日期;等於%m/%d/%y
%F 完整日期格式,等價於 %Y-%m-%d
%H 小時 (00..23)
%I 小時 (01..12)
%j 按年計的日期(001-366)
%m 月份 (01..12)
%M 分鐘 (00..59)
%p 當地時間的AM或PM
%r 當地時間下的 12 小時時鐘時間 (例如:11:11:04 下午)
%R 24 小時時間的時和分,等價於 %H:%M
%s 自UTC 時間 1970-01-01 00:00:00 以來所經過的秒數
%S 秒 (00..60)
%T 時間,等於%H:%M:%S
%U 一年中的第幾周,以週日為每星期第一天(00-53)
%x 當地時間下的日期描述 (例如:12/31/99)
%X 當地時間下的時間描述 (例如:23:13:48)
%w 一星期中的第幾日(0-6),0 代表週一
%W 一年中的第幾周,以週一為每星期第一天(00-53)

使用示例:

  1. 按照預設格式檢視當前系統時間
date

效果如下圖:

  1. 按照指定格式檢視當前系統時間
date "+%F %H:%M:%S"

效果如下圖:

  1. 檢視今天是當年中的第幾天
date "+%j"

效果如下圖:

  1. 將系統的當前時間設定為2020年09月15日22點30分10秒
date -s "20200915 22:30:10"

效果如下圖:

  1. 校正系統時間,與網路時間同步

安裝ntp校時工具

yum -y install ntp

用ntpdate從時間伺服器更新時間

ntpdate time.nist.gov

效果如下圖:

echo

echo命令用於在終端輸出字串或變數提取後的值。

命令格式:echo [字串 | $變數]

使用示例:

  1. 顯示普通字串
echo '萬貓學社'

效果如下圖:

  1. 顯示變數

首先在shell環境中定義一個臨時變數name。

export name='萬貓學社'

使用echo命令將變數name的值顯示到終端。

echo $name

效果如下圖:

  1. 顯示結果定向至檔案
echo "萬貓學社" > name.txt

輸出重定向到檔案name.txt中,如果檔案已存在,將會覆蓋檔案內容,如果不存在則建立。其中>符號表示輸出重定向。

效果如下圖:

也可以使用>>輸出追加重定向符號,將文字追加到檔案內容最後,而不是覆蓋。

  1. 顯示命令執行結果

以下命令將會在終端顯示今天是當年中的第幾天。

echo `date "+%j"`

使用$(command)形式可以達到相同效果。

echo $(date "+%j")

效果如下圖:

uname

uname命令用於檢視系統核心與系統版本等資訊。

命令語法:uname [-amnrsv][--help][--version]

使用示例:

  1. 顯示系統資訊
uname -a

效果如下圖:

  1. 顯示當前系統的硬體架構。
uname -i

效果如下圖:

  1. 顯示作業系統發行編號。
uname -r

效果如下圖:

  1. 顯示作業系統名稱。
uname -s

效果如下圖:

  1. 顯示主機名稱。
uname -n

效果如下圖:

history

history命令用於顯示歷史執行過的命令。

bash預設記錄1000條執行過的歷史命令,被記錄在~/.bash_history檔案中。

使用示例:

  1. 顯示最新10條執行過的命令。
history 10

效果如下圖:

  1. 清除歷史記錄。
history -c

效果如下圖:

who

who 命令顯示關於當前在本地系統上的所有使用者的資訊。

使用示例:

  1. 顯示當前登入系統的使用者
who

效果如下圖:

  1. 顯示使用者登入來源
who -l -H

效果如下圖:

  1. 只顯示當前使用者
who -m -H

效果如下圖:

  1. 精簡模式顯示
who -q

效果如下圖:

last

last 命令用於顯示使用者最近登入資訊。

使用示例:

顯示使用者最近登入資訊。

last

效果如下圖:

由於這些資訊都是以日誌檔案的形式儲存在系統中,黑客可以很容易地對內容進行篡改,所以該命令輸出的資訊並不能作為伺服器是否被入侵的依據。

最後,謝謝你這麼帥,還給我點贊關注

微信公眾號:萬貓學社

微信掃描二維碼

關注後回覆「電子書」

獲取12本Java必讀技術書籍