gpt4 book ai didi

awk 用分隔符连接 n 个字段

转载 作者:行者123 更新时间:2023-12-04 22:49:56 27 4
gpt4 key购买 nike

鉴于我不知道我有多少个领域,我如何使用 awk 加入各个领域?例如,给定输入字符串

aaa/bbb/ccc/ddd/eee

我用 -F'/'作为分隔符,对 aaa 进行一些操作, bbb , ccc , ddd , eee (改变,删除......)我想加入它来打印一些行
AAA/bbb/ddd/e

谢谢

最佳答案

... given that I don't know how many of them I have?


啊,但你知道你有多少。或者你很快就会,如果你继续阅读:-)
在给您处理记录之前, awk将设置 NF该记录中字段数的变量,您可以使用 for循环来处理它们(注释不是脚本的一部分,我只是把它们放在那里来解释):
$ echo pax/is/a/love/god | awk -F/ '{
gsub (/god/,"dog",$5); # pax,is,a,love,dog
$4 = ""; # pax,is,a,,dog
$6 = $5; # pax,is,a,,dog,dog
$5 = "rabid"; # pax,is,a,,rabid,dog

printf $1; # output "pax"
for (i = 2; i <= NF; i++) { # output ".<field>"
if ($i != "") { # but only for non-blank fields (skip $4)
printf "."$i;
}
}
printf "\n"; # finish line
}'
pax.is.a.rabid.dog
这显示了值的操作以及插入和删除。

关于awk 用分隔符连接 n 个字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8984720/

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