linux中的awk怎么用

55次阅读
没有评论

共计 1098 个字符,预计需要花费 3 分钟才能阅读完成。

自动写代码机器人,免费开通

这篇文章主要为大家展示了“linux 中的 awk 怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让丸趣 TV 小编带领大家一起研究并学习一下“linux 中的 awk 怎么用”这篇文章吧。

awk 内置变量

ARGC  命令行参数个数
ARGV  命令行参数排列
ENVIRON  支持队列中系统环境变量的使用
FILENAME awk 浏览的文件名
FNR  浏览文件的记录数
FS  设置输入域分隔符,等价于命令行  - F 选项
NF  浏览记录的域的个数
NR  已读的记录数
OFS  输出域分隔符
ORS  输出记录分隔符
RS  控制记录分隔符
$0 变量是指整条记录。$1 表示当前行的第一个域,$2 表示当前行的第二个域,...... 以此类推。$NF 是 number finally, 表示最后一列的信息,跟变量 NF 是有区别的,变量 NF 统计的是每行列的总数 

常用的命令展示

awk 擅长列输出

搜索 /etc/passwd 有 root 关键字的所有行

awk  /root/  /etc/passwd

【这种是 pattern 的使用,匹配了 pattern(这里是 root) 的行才会执行 action(没有指定 action,默认输出每行的内容)】
搜索 /etc/passwd 有 root 关键字的所有行,并显示对应的
shell

awk -F:  /root/ {print $7}  /etc/passwd

统计 /etc/passwd: 文件名,每行的行号,每行的列数,对应的完整行内容:

awk -F  :   {print  filename:  FILENAME  ,linenumber:  NR  ,columns:  NF  ,linecontent: $0}  /etc/passwd

使用 printf 替代 print, 可以让代码更加简洁,易读

awk -F:  {printf ( filename:%10s, linenumber:%3s,column:%3s,content:%3f\n ,FILENAME,NR,NF,$0)}  /etc/passwd

打印 /etc/passwd/ 的第二行信息

awk -F:  NR==2{print  filename:  FILENAME, $0}  /etc/passwd

awk 的过滤使用方法

ls -lF | awk  /^d/

指定特定的分隔符,查询第一列

awk -F  :   {print $1}  /etc/passwd

以上是“linux 中的 awk 怎么用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注丸趣 TV 行业资讯频道!

向 AI 问一下细节

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-07发表,共计1098字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)