温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

常见的AWK 单行语句有哪些?

发布时间:2020-05-27 10:41:33 来源:亿速云 阅读:151 作者:Leah 栏目:系统运维

今天小编就为大家带来一篇有关常见的AWK 单行语句的文章。小编觉得挺实用的,为此分享给大家做个参考。一起跟随小编过来看看吧。

1、END {print NR}    #输出总行数
2、NR == 10      #输出第十行

3、{ print $NF }     #输出最后一列
4、{ field = $NF} END { print field } #输出最后一行的最后一列
5、NF > 4    #输出input line中所有多过4列的行(这个没有在action中,所以是过滤功能)
6、$NF > 4   #输出input line中所有最后一列的值大于4的行,也是过滤
7、{ nf = nf + NF } END { print nf }     #input line的所有累加总的fields
8、/Beth/ { nlines = nlines + 1 } END { print nlines }       #含有Beth这个单词的总行数
9、$1 > max { max = $1; maxline = $0 } END {print max, maxline }     #输出第一列最大的行
10、NF > 0   #field输出非空的行
11、length($0) > 80  #过滤出整行的长度超过80的行
12、{ print NF, $0 }     #在行前面输出本行有多少列
13、{ print $2, $1 }     #输出每一行的第二列,空格,第一列
14、{ temp = $1; $1 = $2; $2 = temp; print }     #第一和第二列互换位置后输出全部行
15、{ $1 = NR; print }   #第一列替换为行号后输出行
16、{ $2 = ""; print }   #清除第二列后输出全部行
17、{ for ( i = NF; i > 0; i = i - 1) printf("%s ", $i) ;printf("\n")}
#逆序输出整行
18、{ sum = 0; for (i = 1; i <= NF; i = i + 1) sum = sum + $i }; print sum        #求出每行的列汇总和
19、{ for (i = 1; i <= NF; i = i + 1) sum = sum + $i } END { print sum }     #求出所有行的所有列总和的总和
20、{ for (i = 1; i <= NF; i = i + 1) if ($i < 0) $i= -$i; print }       #找出每列中的负数,并使其变成对应正数

关于常见的AWK 单行语句就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果喜欢这篇文章,不如把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI