gpt4 book ai didi

Linux-更改两个awk脚本之间的行

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:23:04 25 4
gpt4 key购买 nike

我有两个要在 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

谢谢!~

最佳答案

虽然我不明白你是如何按照你的方式获得字段之间的空格的,但你可以在第一个脚本中添加一个 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

关于Linux-更改两个awk脚本之间的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18138176/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com