如何运行 AWK 程序

如果程序很短,可以将它包含在运行 awk 的命令中:

awk -F: '{print $1, $2}' /etc/passwd

在这个例子中,使用命令行开关 -F:,我们建议 awk 使用:作为输入字段分隔符。是一样的

awk 'BEGIN{FS=":"}{print $1,$2}' file

或者,我们可以将整个 awk 代码保存在 awk 文件中并像这样调用这个 awk 程序:

awk -f 'program.awk' input-file1 input-file2 ...

program.awk 可以是任何多行程序,即:

# file print_fields.awk
BEGIN {print "this is a header"; FS=":"}
{print $1, $2}
END {print "that was it"}

然后运行它:

awk -f print_fields.awk /etc/passwd   #-f advises awk which program file to load

或者更一般地说:

awk -f program-file input-file1 input-file2 ...

将程序放在一个单独的文件中的优点是你可以编写具有正确标识的程序来理解,你可以用#等包含注释