Linux最棒的地方在于它的多用戶多任務環境,記錄下多用戶多任務相關的幾個常用命令。
前后臺進程及切換
有時候我們并不一定要在屏幕前工作,這時就需要使用到背景工作管理的一些指令,如 &
,ctrl+z
。
如果想讓程序在背景下執行,可以使用 &
,由于是背景,該程序的輸入并不會顯示在屏幕上。
語法格式: command &
# 程序進入背景執行
find / -name test &
# fg 將程序拉回屏幕前執行
fg
也可以通過 ctrl+z
將正在運行的工作丟到背景下,放在背景下的最大好處就是不會被 ctrl+c
指令中斷。
如果出現某個時候需要暫時退出vim,但又不想保存退出,可 ctrl+z
暫時退出
# 程序進入背景執行
vim a.js
# 將vim放到背景中,并沒有退出
ctrl+z
可使用 jobs
可以查看任務列表,配合 bg
,fg
將程序拉回屏幕。
查看背景程序:jobs
# 查看背景程序
jobs
[1] + suspended vim a.js
# 恢復vim編輯
fg %1
fg & bg
恢復背景進程
#number 為jobs中方括號中的編號
fg %number
#將背景程序中的程序由stopped變成running
bg %number
kill
殺掉背景程序中的程序
kill -signal %number
signal
-1 :重新讀取參數配置(類似reload)
-2 :類似Ctrl+c中斷工作
-9 :強制殺掉進程
-15 :停止一個工作(默認值)
#殺掉vim 進程
kill -9 %1
查看進程
ps
查看進程信息
ps -aux
參數說明
a :顯示所有程序
u :列出所有用戶程序
x :列出所有tty程序
# 顯示進程信息
ps -aux
USER PID %CPU %MEM VSZ RSS TT STAT STARTED TIME COMMAND
nali 2557 3.0 1.2 2832304 49180 ?? S 五04下午 4:54.94 /Applications/iTerm 2.app/Contents/MacOS/iTerm2
nali 920 1.6 0.8 2939412 34404 ?? S 四07下午 5:26.69 /Applications/QQ.app/Contents/MacOS/QQ
#干掉進程
kill -9 pid
另外一個顯示進程的命令是 top
可動態顯示。
查看內存使用:free
查看系統資源:sar
程序優先級
由于CPU資源有限,優先級高的程序會先獲取CPU資源。
ps -l
UID PID PPID F CPU PRI NI SZ RSS WCHAN S ADDR TTY TIME CMD
501 9005 2557 4006 0 31 0 2507116 9148 - Ss 0 ttys001 0:00.07 /Applications/iTerm 2.app/Contents/MacOS/iTerm2 --server login
#PRI 代表程序優先級,越小越先被執行
NI 代表nice的值
PRI越小越優先被執行
PRI(new) = PRI(old) + nice
一般用戶可用的nice值 0~19 , root可用的nice值-20~19
調整程序的的優先級
nice [-n number] command
調整運行中程序的優先級
renice number PID
查看系統相關信息
uname
查看系統信息
uname
參數信息:
-a :列出所有信息
-p :列出CPU信息
-r :列出核心版本信息
-n :列出版本信息
dmesg
查看啟動一閃而過的信息
uptime
顯示開機時間及負載相關信息
last
顯示登錄信息
hostname
顯示主機名
who
查看當前系統上的用戶(只列出用戶名及登錄時間)
w
查看當前系統上的用戶(列出用戶名及登錄時間 + 源地址IP + 工作項 + ..)
whoami
顯示當前登錄用戶名
ntpdate
網絡校時
# 校時服務器 time.stdtime.gov.tw
# 執行校時命令
ntpdate time.stdtime.gov.tw
# 可配合crontab定時校時