linux命令——awk

来源:互联网 发布:骚男辣条淘宝店链接 编辑:程序博客网 时间:2024/06/06 01:45

awk 语法格式

awk {参数} 'pattern {action}'   {filename}

 常用参数:

-F #指定分隔符

-v var=varlue #用户设定的变量

pattern(模式)常用有以下几种格式

/正则表达式/ #如/user/ ,/^user/

关系表达式 #如NR==1 || NR==2,其中NR是awk工具中的特定变量,是行号的意思

BEGIN,END 模块 #其中BEGIN模块是awk程序开始前的动作,BEGIN模块后面跟动作模块,END模块是awk程序结束后的动作。

action (动作) 主要为一个或多个命令,函数,表达式等 用;隔开。

用几个例子帮助理解

awk -F : '/root/ {print $0}' /etc/passwd #打印出/etc/passwd 中包含root的行,$0指整个文件,$1是以分隔符隔开的第一个字段

awk -F '[:\t]' 'print {$1,$3}' #以:,制表符,空格为分隔符,并打印出第一,三字段(多个分隔符用[]括起来)

ls -l filename|awk 'BEGIN {size=0;} {size=$5;} END {print "size is:",size}' #统计filname的大小

awk '{gsub("a","A");print}' filename #把filename中的a替换成A,打印出来

0 0
原创粉丝点击