我有两个在Linux中运行的awk脚本。每个输出都在一行。 如何将两个输出分成两行?
例如:
awk '{printf $1}' f.txt >> a.txt
awk '{printf $3}' f.txt >> a.txt
第一个脚本的输出是:
35 56 40 28 57
第二个输出是:
29 48 73 26
如果我一个接一个地运行它们,输出将变为:
35 56 40 28 57 29 48 73 26
有没有办法把结果发到:
35 56 40 28 57
29 48 73 26
谢谢!〜
答案 0 :(得分:2)
虽然我不明白你是如何设法获得字段之间的空格的,但是你可以在第一个脚本中添加END
语句:
awk '{printf $1} END{print "\n"}'
您也可以使用一个awk命令执行此操作:
awk -v ORS=" " 'BEGIN{ARGV[ARGC++] = ARGV[1]; i = 1 }
NR!=FNR && FNR==1 { printf "\n"; i=3 }
{ print $i }
END { printf "\n" }' f.txt