单引号转义

echo "a'b'c'd" |awk 'BEGIN {FS="['\'']"} {print $1,$2,$3,$4}'



内置变量列表




替换分割符

echo "this-is-a-pig"| awk 'BEGIN {FS="-";OFS=","} {print $1,$2,$3,$4}'

以空行作为记录分割符,再在每个记录里根据FS分段

cat t1.txt
a
b
c
 
d
e
f
 
g
h
i

awk 'BEGIN {RS="";FS="\n"} {print $1,$2,$3}' t1.txt
     
输出
a b c
d e f
g h i

统计空行的个数

cat t1.txt
a
b
c

d
e
f

g
h
i
awk '/^$/ {x+=1} END {print x}' t1.txt

输出
2

BEGIN与END

awk 'BEGIN {print "BEGIN";x=0;} {x+=1;print x} END {print x}' t1.txt


输出每行的第2列到最后一列

awk -F " " '{for (i=2;i<=NF;i++)printf("%s ", $i);print ""}'