FS: 输入字段分隔符, 默认为空白字符
- awk -v FS=: {print $1,FS,$3} /etc/passwd
- awk F: {print $1,$3,$7} /etc/passwd
OFS: 输出字段分隔符, 默认为空白字符
awk -v FS=: -v OFS=: {print $1,$3,$7} /etc/passwd
RS: 输入记录分隔符, 指定输入时的换行符, 原换行符仍有效
awk -v RS= {print } /etc/passwd
ORS: 输出记录分隔符, 输出时用指定符号代替换行符
awk -v RS= -v ORS=###{print } /etc/passwd
NF: 字段数量
- awk -F: {print NF} /etc/fstab (# 引用内置变量不用 $)
- awk -F: {print $(NF-1)} /etc/passwd
NR: 行号
awk {print NR} /etc/fstab ; awk END{print NR} /etc/fstab
FNR: 各文件分别计数, 行号
awk {print FNR} /etc/fstab /etc/inittab
FILENAME: 当前文件名
awk {print FILENAME} /etc/fstab
ARGC: 命令行参数的个数
- awk {print ARGC} /etc/fstab /etc/inittab
- awk BEGIN {print ARGC} /etc/fstab /etc/inittab
ARGV: 数组, 保存的是命令行所给定的各参数
- awk BEGIN {print ARGV[0]} /etc/fstab /etc/inittab
- awk BEGIN {print ARGV[1]} /etc/fstab /etc/inittab
来源: http://www.bubuko.com/infodetail-2544911.html