有一张表 qqinfo.txt
Seq QQ Age Sex From
01 12345 20 male guangdong,shenzhen
02 23456 21 female sichuan,chengdu
03 34567 19 female fujian,fuzhou
04 45678 22 male beijing
05 56789 45 male shanghai
06 67890 9 female guangdong,guangzho
一、过滤:
1、打印Age>20的行,带表头
awk '$3>20 || NR==1' qqinfo.txt
2、打印奇数行
awk '!(NR%2)' qqinfo.txt
二、字符串匹配
3、打印第四列有guangdong或beijing的QQ
awk '$5 ~ /guangdong|beijing/ {print $2}' qqinfo.txt
4、打印有female的行
awk '/femal/' qqinfo.txt
三、文件拆分
5、按第四列分隔文件
awk 'NR!=1 {print > $4}' qqinfo.txt
四、统计
6、统计男女人数
awk 'NR!=1 {a[$4]++;} END {for(i in a) print i ", " a[i];}' qqinfo.txt
Seq QQ Age Sex From
01 12345 20 male guangdong,shenzhen
02 23456 21 female sichuan,chengdu
03 34567 19 female fujian,fuzhou
04 45678 22 male beijing
05 56789 45 male shanghai
06 67890 9 female guangdong,guangzho
一、过滤:
1、打印Age>20的行,带表头
awk '$3>20 || NR==1' qqinfo.txt
2、打印奇数行
awk '!(NR%2)' qqinfo.txt
二、字符串匹配
3、打印第四列有guangdong或beijing的QQ
awk '$5 ~ /guangdong|beijing/ {print $2}' qqinfo.txt
4、打印有female的行
awk '/femal/' qqinfo.txt
三、文件拆分
5、按第四列分隔文件
awk 'NR!=1 {print > $4}' qqinfo.txt
四、统计
6、统计男女人数
awk 'NR!=1 {a[$4]++;} END {for(i in a) print i ", " a[i];}' qqinfo.txt