longgb246的博客

awk

1、简单例子

1
awk 'BEGIN {print "Hello world!"}' # 这个不需要文件输入就可以

awkscr文件:

1
/^$/ {print "This is a blank line"}

运行脚本文件awkscr对应于test文件:

1
awk -f awkscr test

例子

1
echo a b c d | awk '{one=1;two=2}{print $(one + two)}'

-F “\t” :表示分隔符为\t
FS:表示分隔符

灵活指定分隔符,正则指定

1
2
3
4
BEGIN {FS=","}{print $1 "," $6} # 使用,为分隔符
FS="\t" # 指定一个 tab 为分隔符
FS="\t+" # 指定一个以上的 tab 为分隔符【正则】
FS="[':\t]" # 指定'、:、 tab 中任何一个为分隔符

2、模式匹配

1
2
3
awk '/^$/ {print "This is a blank line"}' test
awk '/[0-9]/ {print "This is a blank line"}' test
awk '/[A-Za-z]/ {print "This is a blank line"}' test

http://www.cnblogs.com/ggjucheng/archive/2013/01/13/2858470.html

http://awk.readthedocs.io/en/latest/chapter-one.html

坚持原创技术分享,您的支持将鼓励我继续创作!