shell awk

1.作用

  抽取信息

2.语法

awk 'pattern {action}' filename

pattern 是正则表达式

action 是对该信息的操作

awk的逻辑:

  以行为单位,逐行读入处理,并以空格为分隔,得到每次处理的元素。

3.示例

1、打印文件的第一列(域)                : awk '{print $1}' filename
2、打印文件的前两列(域)                : awk '{print $1,$2}' filename
3、打印完第一列,然后打印第二列          : awk '{print $1 $2}' filename
4、打印文本文件的总行数                 : awk 'END{print NR}' filename	
5、打印文本第一行                      :awk 'NR==1{print}' filename
6、打印文本第二行第一列                 :sed -n "2, 1p" filename | awk 'print $1'

 上面使用了awk变量,变量如下

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

 

推荐blog:

https://www.cnblogs.com/ftl1012/p/9250541.html

猜你喜欢

转载自www.cnblogs.com/yangxinrui/p/11318757.html