改变AWK读取文件的方式

任何人都可以帮助我实现这个,通常是AWK读取文件

abc 

 $1:a $2:b $3:c 

如何阅读这个文件

 a b c 

 $1:a $2:b $3:c 

非常感谢您的帮助。

您可以取消设置记录分隔符并将输入字段分隔符更改为换行符:

 $ awk -F'\n' -vRS='' '{print $1,$2,$3}' file abc 

使用GNU awk进行多字符RS:

 $ cat file a b c d $ awk -v RS='^$' '{for (i=1;i<=NF;i++) print "$"i"="$i; print "----"}' file $1=a $2=b $3=c $4=d ---- 

注意与Tom将RS设置为NULL字符串的解决方案的区别:

 $ awk -F'\n' -v RS='' '{for (i=1;i<=NF;i++) print "$"i"="$i; print "----"}' file $1=a $2=b $3=c ---- $1=d ---- 

想想如果文件中有空行,你希望脚本的行为如何。