1. 程式人生 > 其它 >文字處理工具和正則表示式-文字處理和shell程式設計基礎

文字處理工具和正則表示式-文字處理和shell程式設計基礎

1、統計出/etc/passwd檔案中其預設shell為非/sbin/nologin的使用者個數,並將使用者都顯示出來
grep -v "/sbin/nologin" /etc/passwd
awk -F: 'BEGIN{count=0}{if($NF!="/sbin/nologin"){print $1; count++}}END{printf "default shell is not nologin has %d user\n", count}' /etc/passwd

2、查出使用者UID最大值的使用者名稱、UID及shell型別
sort -t: -k3 -n /etc/passwd | tail -1 | awk -F: '{print $1, $3, $NF}'

3、統計當前連線本機的每個遠端主機IP的連線數,並按從大到小排序
ss -tn4 | awk -F "[: ]+" 'NR>1 {print $(NF-2)}' | sort | uniq -c | sort -n

4、編寫指令碼disk.sh,顯示當前硬碟分割槽中空間利用率最大的值
df -lh | awk -F"[ %]+" 'BEGIN{MAX_USE="0"; COL=5}NR>1{if($COL>MAX_USE){MAX_USE=$COL}}END{print MAX_USE}'

5、編寫指令碼 systeminfo.sh,顯示當前主機系統資訊,包括:主機名,IPv4地址,作業系統版本,核心版本,CPU型號,記憶體大小,硬碟大小
hostname && hostname -I && cat /etc/centos-release && uname -r && lscpu | grep "Model name" && free -h | awk 'NR>1{print $1,$2}' && lsblk | grep "[1]

" |awk '{print $4}'

6、20分鐘內通關vimtutor(可參考https://yyqing.me/post/2017/2017-02-22-vimtutor-chinese-summary)


  1. a-z ↩︎