一、w命令簡介
w命令是一個常用的Linux命令,用於查看當前登錄系統的用戶信息。它可以展示用戶的登錄名、終端、登錄時間、CPU佔用情況等信息。w命令不需要root權限即可執行,通常用於監控系統資源使用情況。
二、w命令語法
w命令的語法如下:
w [選項] [用戶名]
選項:
- -h:顯示幫助信息
- -s:不顯示登錄時間、JCPU、PCPU等信息
- -u:顯示用戶登錄時間、會話時間、CPU佔用等信息
- -f:顯示從上次系統啟動以來的會話信息
- -V:顯示版本信息
用戶名:如果指定了用戶名,則僅顯示該用戶的信息,否則顯示所有用戶的信息。
三、查看當前登錄用戶信息
執行w命令,可以查看當前登錄系統的用戶信息。
$ w
輸出結果如下:
21:46:59 up 6:01, 1 user, load average: 0.06, 0.03, 0.06 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT user tty1 - 15:00 6:00m 0.05s 0.05s -bash
輸出結果中,第一行展示了系統當前時間、運行時間和平均負載。第二行到最後一行展示了登錄的用戶信息,包含用戶名、終端、IP地址、登錄時間、空閑時間、JCPU(該進程在用戶態運行的時間)和PCPU(該進程在內核態運行的時間)等信息。
四、查看指定用戶的登錄信息
使用w命令,可以查看指定用戶的登錄信息。
$ w user
輸出結果如下:
21:46:59 up 6:01, 1 user, load average: 0.06, 0.03, 0.06 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT user tty1 - 15:00 6:00m 0.05s 0.05s -bash
輸出結果只包含了指定用戶的登錄信息。
五、顯示用戶進程信息
w命令也可以顯示用戶的進程信息。
$ w -u
輸出結果如下:
21:46:59 up 6:01, 1 user, load average: 0.06, 0.03, 0.06 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT user tty1 - 15:00 6:00m 0.05s 0.05s -bash user pts/0 192.168.1.23 17:20 0.00s 0.08s 0.02s w -u
輸出結果中,最後一行展示了當前執行的w命令的進程信息。
六、只顯示用戶名
如果只需要顯示用戶名,可以使用awk和sed進行篩選。
$ w | awk 'NR==1 {print $4}; NR>2 {print $1}' | sed 's/[()]//g'
輸出結果如下:
USER user
輸出結果中,第一行為標題,第二行為所有登錄用戶的用戶名。
七、只顯示當前登錄用戶的進程信息
如果只需要顯示當前登錄用戶的進程信息,可以使用ps命令和grep命令。
$ ps -u $(whoami) | grep -v PID
輸出結果如下:
1792 tty1 00:00:00 bash 6803 pts/0 00:00:00 bash 6885 pts/0 00:00:00 ps
輸出結果中,展示了當前登錄用戶的進程信息,包含進程ID、終端、命令等信息。
八、結論
通過w命令,我們可以方便地了解當前系統的用戶登錄情況,包含用戶的登錄信息、進程信息等。除了w命令,還可以使用ps命令、awk命令、sed命令等進行更詳細的篩選和處理。
原創文章,作者:WSUW,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/138864.html