No.10 awk、变量、运算符、if多分支
生活随笔
收集整理的這篇文章主要介紹了
No.10 awk、变量、运算符、if多分支
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
awk、變量、運算符、if多分支
awk語法
~ awk -F: '{print $3,$4}' /etc/passwd //-F指定:分隔符 默認以空格作為分隔符 ~ awk -F: '{print &0,NF}' //$0打印全部,NF有幾段內容 ~ awk -F: '{print $NF}' /etc/passwd //$NF打印最后一段內容 ~ awk -F: '{print NR}' /etc/passwd //$NR代表行號 ~ awk -F: 'NR==1{print $1,NR}' /etc/passwd //打印第一行 ~ awk -F: 'NR<=3{print $1,NR}' /etc/passwd //打印前三行 ~ awk -F: 'NR==1{print NR,"---",$1}' /etc/passwd //打印第一行,并加---分隔 ~ awk -F: 'NR >= 3 && NR <= 5{print NR,"---",$1}' /etc/passwd //打印第三行到第五行的內容 ~ awk -F: 'NR <= 3 || NR >= 50{print NR,"---",$1}' /etc/passwd //打印前3行前和50行之后的內容 ~ awk -F: '/nologin$/{print $1}' /etc/passwd //打印以nologin結尾的用戶名 ~ awk -F: '$1~/^r.*t$/{print NR,$1}' /etc/passwd //匹配第一個字段 ~ awk -F: '$1=="root"{print NR,$1}' /etc/passwd //匹配第一個字段awk文本處理
打印uid在30~40范圍內的用戶名。
~ awk -F: '$3 >= 30 && $3 <= 40{print $1,$3}' /etc/passwd打印第5-10行的行號和用戶名
~ awk -F: 'NR >=5 && NR <=10{print NR,$1}' /etc/passwd打印奇數行
~ awk 'NR%2==1{print NR,$1}' /etc/passwd打印偶數行
~ awk 'NR%2==0{print NR,$1}' /etc/passwd打印字段數大于5的行
~ awk -F: 'NF > 5{print NR,$0}' /etc/passwd打印UID不等于GID的用戶名
~ awk -F: '$3 != $4{print NR,$1,$3,$4}' /etc/passwd打印沒有指定shell的用戶
~ awk '/[^h]$/{print}' /etc/passwdshell腳本編寫
自動部署、初始配置、并啟動nginx反向代理服務
~ vim install.sh #!/bin/bash rpm -qa | grep nginx echo $? if [ $? -ne 0 ] thenyum -y install epel-release && yum -y install nginxiptables -F && setenforce 0systemctl start nginxecho $? fi ~ chmod +x install.sh自動部署、初始配置、并啟動三臺web
監控腳本:監控每臺機器的內存使用率>70%,則輸出報警信息
(思路提示:[root@www ~]# ((80>70))[root@www ~]# echo $?0 ) ~ vim per.sh #!/bin/bash total=`free -w | awk 'NR==2{print $2}'` used=`free -w | awk 'NR==2{print $6+$7}'` per=`echo "scale=2;$used/$total" | bc -l | cut -d. -f2` if (($per>=70)) thenecho '警告' elseecho 'ok' fi轉載于:https://www.cnblogs.com/hyhnm/p/6607819.html
總結
以上是生活随笔為你收集整理的No.10 awk、变量、运算符、if多分支的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 平安银行信用卡取现额度有多少?怎么取现?
- 下一篇: 排序: 选择排序