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) |
使用示例:
- 按照預設格式檢視當前系統時間
date
效果如下圖:
- 按照指定格式檢視當前系統時間
date "+%F %H:%M:%S"
效果如下圖:
- 檢視今天是當年中的第幾天
date "+%j"
效果如下圖:
- 將系統的當前時間設定為2020年09月15日22點30分10秒
date -s "20200915 22:30:10"
效果如下圖:
- 校正系統時間,與網路時間同步
安裝ntp校時工具
yum -y install ntp
用ntpdate從時間伺服器更新時間
ntpdate time.nist.gov
效果如下圖:
echo
echo命令用於在終端輸出字串或變數提取後的值。
命令格式:echo [字串 | $變數]
使用示例:
- 顯示普通字串
echo '萬貓學社'
效果如下圖:
- 顯示變數
首先在shell環境中定義一個臨時變數name。
export name='萬貓學社'
使用echo命令將變數name的值顯示到終端。
echo $name
效果如下圖:
- 顯示結果定向至檔案
echo "萬貓學社" > name.txt
輸出重定向到檔案name.txt中,如果檔案已存在,將會覆蓋檔案內容,如果不存在則建立。其中>
符號表示輸出重定向。
效果如下圖:
也可以使用>>
輸出追加重定向符號,將文字追加到檔案內容最後,而不是覆蓋。
- 顯示命令執行結果
以下命令將會在終端顯示今天是當年中的第幾天。
echo `date "+%j"`
使用$(command)
形式可以達到相同效果。
echo $(date "+%j")
效果如下圖:
uname
uname命令用於檢視系統核心與系統版本等資訊。
命令語法:uname [-amnrsv][--help][--version]
使用示例:
- 顯示系統資訊
uname -a
效果如下圖:
- 顯示當前系統的硬體架構。
uname -i
效果如下圖:
- 顯示作業系統發行編號。
uname -r
效果如下圖:
- 顯示作業系統名稱。
uname -s
效果如下圖:
- 顯示主機名稱。
uname -n
效果如下圖:
history
history命令用於顯示歷史執行過的命令。
bash預設記錄1000條執行過的歷史命令,被記錄在~/.bash_history檔案中。
使用示例:
- 顯示最新10條執行過的命令。
history 10
效果如下圖:
- 清除歷史記錄。
history -c
效果如下圖:
who
who 命令顯示關於當前在本地系統上的所有使用者的資訊。
使用示例:
- 顯示當前登入系統的使用者
who
效果如下圖:
- 顯示使用者登入來源
who -l -H
效果如下圖:
- 只顯示當前使用者
who -m -H
效果如下圖:
- 精簡模式顯示
who -q
效果如下圖:
last
last 命令用於顯示使用者最近登入資訊。
使用示例:
顯示使用者最近登入資訊。
last
效果如下圖:
由於這些資訊都是以日誌檔案的形式儲存在系統中,黑客可以很容易地對內容進行篡改,所以該命令輸出的資訊並不能作為伺服器是否被入侵的依據。
最後,謝謝你這麼帥,還給我點贊和關注。
微信公眾號:萬貓學社
微信掃描二維碼
關注後回覆「電子書」
獲取12本Java必讀技術書籍