awk 内置变量
Posted 借风拥你
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了awk 内置变量相关的知识,希望对你有一定的参考价值。
awk 内置变量
FS 设置输入域分隔符,等价于命令行 -F选项
OFS 输出域分隔符
NF 浏览记录的域的个数
NR 已读的记录数
RS 控制记录分隔符
ORS 输出记录分隔符
实例:
1. FS设置域分隔符 等于-F。
过滤出了/etc/passwd 文件中的第一列
[[email protected] ~]# awk ‘BEGIN{FS=":"}{print $1}‘ /etc/passwd
root
bin
daemon
adm
lp
sync
2.OFS 输出域分隔符。
我们可以改变文件内容的分割符号,并且打印出来
文件内容如下
[[email protected] ~]# cat abc
123 456
abc bcd
aaa bbb
[[email protected] ~]# awk ‘BEGIN{OFS=","}{print $1,$2}‘ abc
123,456
abc,bcd
aaa,bbb
注意:这种情况需要多列,单列是不行的
3.NF 浏览记录的域的个数
打印出每行有几列
[[email protected] ~]# awk ‘{print NF}‘ abc
2
2
2
4.NR 已读的记录数
awk 读了几行内容
[[email protected] ~]# awk ‘{print NR}‘ abc
1
2
3
5、ORS 输出记录分隔符
awk规定,对于文本文件,默认情况下,一条记录对应一行,即记录之间的默认分隔符是换行符;而一条记录又可以分为多个字段,默认字段分隔符为空格。
[[email protected] ~]# cat abc
123
abc
aaa
[[email protected] ~]# awk ‘BEGIN{ORS=","}{print $0}‘ abc
123,abc,aaa,[[email protected] ~]#
所以我们可以在编辑某些文件时,可以让文件内容横排显示,并且加上一定的分割符号
以上是关于awk 内置变量的主要内容,如果未能解决你的问题,请参考以下文章