我有一个awk
针对一对文件运行的脚本。我这样称呼它:
awk -f script.awk file1 file2
script.awk 看起来像这样:
BEGIN {FS=":"}
{ if( NR == 1 )
{
var=$2
FS=" "
}
else print var,"|",$0
}
每个文件的第一行以冒号分隔。对于每一行,我希望它返回到默认的空白文件分隔符。
这适用于第一个文件,但失败,因为FS
没有重置到:
每个文件之后,因为 BEGIN 块只处理一次。
tldr:有没有办法让 awk 为我传递的每个文件处理一次 BEGIN 块?
我在 cygwin bash 上运行它,以防万一。