awk
2020-04-15 17:27:15 0 举报
AI智能生成
awk学习逻辑图
作者其他创作
大纲/内容
数组
awk -F: '{username[++i]=$1}END{print[1]}' passwd
awk -F: '{username[++x]=$1} END{for(i=1;i<x+1;i++) print i,username[i]}' passwd
awk -F: '{username[++x]=$1} END{for(i in username) {print i,username[i]}}' passwd
正则表达式
awk '/^root/' /path/to/file
awk '!/root/' /path/to/file
awk -F: '$1~/^root/' /etc/passwd
awk -F: '$NF !~/nologin$/' /etc/passwd
比较表达式
awk -F: '$3 == 0' /etc/passwd
awk -F: '$7 == "/bin/bash"' /etc/passwd
awk -F: '$3 < 99' /etc/passwd
条件表达式
awk -F: '$3 > 100 {print $1,$3}' passwd
awk -F: '{if($3>0 && $3 <1000) {count++;}} END{print count}' passwd
awk -F: '{if($3==0){i++} else if($3>999) {j++} else {k++}} END{print "管理员个数:"i;print "系统用户个数:"k;print "普通用户个 数:"j}' passwd
awk -F: '{i=1; while(i<10) {print $0; i++}}' passwd #将每行打印10次
awk -F: '{for(i=1;i<5;i++) print $0}' passwd #将每行打印5次
算数运算
awk -F: '$3 * 10 > 500' passwd #awk都将一浮点数方式执行算数运算
逻辑操作符和复合模式
awk -F: '$3>50 && $3 <=100' passwd
awk -F: '$3>50 || $3 <=100' passwd
awk -F: '!($3>50 && $3 <=100)' passwd
0 条评论
下一页