1. 輸出顯示為表格形式
有些命令的輸出太擁擠對用戶不太友好锨苏,比如mount
,可以用命令mount | column -t
以表格形式輸出(默認(rèn)輸出列是以空格分隔):
-
mount輸出表格形式
如果命令的輸出結(jié)果都是其他非空格分隔的比如冒號日缨,則可以使用命令cmd | column -t -s :
來輸出表格叶眉。
2. 輸出占用CPU和內(nèi)存最高的進(jìn)程
# 查看占用CPU最高的10個(gè)進(jìn)程的兩種方法
ps aux | sort -nk 3 -r | head -n 10
ps aux --sort=-pcpu | head -n 10
# 查看占用內(nèi)存最高的10個(gè)進(jìn)程的兩種方法
ps aux | sort -nk 4 -r | head -n 10
ps aux --sort=-pmem | head -n 10
3. screen
一般地打開一個(gè)shell終端起一個(gè)后臺進(jìn)程刽漂,如果shell終端關(guān)掉該進(jìn)程會立即被kill掉眷昆,此時(shí)可以使用screen
命令使進(jìn)程運(yùn)行于后臺蜒秤,同時(shí)不會因?yàn)殛P(guān)閉shell會話致應(yīng)用程序停止。
比如打開k8s dashboard服務(wù)進(jìn)程:
screen kubectl proxy
隙赁,該命令會進(jìn)入到一個(gè)新的shell會話垦藏,通過快捷鍵CTRL+a+d
回到初始會話界面梆暖,且即使關(guān)掉該shell會話伞访,k8s dashboard服務(wù)進(jìn)程依然會保持后臺運(yùn)行。
-
把k8s dashboard服務(wù)進(jìn)程放在后臺執(zhí)行
4. xargs
xargs
命令非常大的一個(gè)功能就是可以將管道前邊的輸出結(jié)果作為管道后的命令的參數(shù)來進(jìn)一步處理轰驳,比如當(dāng)前目錄下查詢所有的.yaml
文件然后將其打包:
find ./ -name '*.yaml' -type f -print | xargs tar -zcvf yaml.tar.gz
如果是作為管道后命令的中間參數(shù)則可以使用如下樣式厚掷,比如將當(dāng)前目錄下所有的deb文件拷貝到其他目錄:
ls *.deb | xargs -i cp {} test_xargs/
5. fuck
thefuck
是一個(gè)很好玩的工具,每次你敲錯(cuò)命令之后级解,輸入fuck
可以自動更正命令冒黑,舉個(gè)簡單例子:
-
敲錯(cuò)python,fuck之后立即自動更正
6. at
該命令常用于一次性
的執(zhí)行某個(gè)定時(shí)任務(wù)勤哗,比如10分鐘后執(zhí)行一個(gè)腳本任務(wù)抡爹,我們可以操作如下:
- 一個(gè)簡單任務(wù)的操作舉例
上圖中任務(wù)腳本輸入完之后,ctrl+d
即可結(jié)束輸入芒划。
另外冬竟,在執(zhí)行at
命令之前建議先用service atd status
查看其daemon進(jìn)程服務(wù)狀態(tài)欧穴,而關(guān)于at
命令更詳細(xì)的用法則可通過man
或help
信息查看,如果有執(zhí)行周期性任務(wù)的需求則用crontab
啦泵殴。
7. htop
比top
更好用對用戶更友好的查看系統(tǒng)進(jìn)程情況的工具涮帘,在shell終端命令行直接輸入htop
即可,下面是輸出效果圖:
-
htop輸出結(jié)果圖
類似windows下面的任務(wù)管理器笑诅,并且可以很直觀和方便的實(shí)現(xiàn)對進(jìn)程的過濾(F4)调缨、排序占用CPU/Memory的進(jìn)程(F6)和kill掉某個(gè)進(jìn)程(F9)。