gpt4 book ai didi

bash - 组合行时相当于 PHP 内爆的终端命令

转载 作者:行者123 更新时间:2023-11-29 09:18:55 25 4
gpt4 key购买 nike

我有几行,想将这些行分成 5 行,然后将其内爆以用于 MySQL IN () 查询。

我一直坚持到现在

awk '{ printf "%s", $0; if (NR % 5 == 0) print ""; else printf " " }

例如,我想要下面这几行

1
2
3
4
5
6

成为

1,2,3,4,5
6

如果我用这个

awk '{ printf "%s", $0; if (NR % 5 == 0) print ""; else printf "," }

如果所有行都不能被 5 整除,那么输出的末尾将有 ,

更新

以前的标题是 awk 而不是 bash,但事实证明有比 awk 更简单的解决方案。我的目标是做这样的事情

$seq 12 | pr -7ats, | xargs -I X echo "SELECT * FROM Table IN (X)" #or execute mysql
SELECT * FROM Table WHERE id IN (1,2,3,4,5,6,7)
SELECT * FROM Table WHERE id IN (8,9,10,11,12)

最佳答案

pr 就是这个工具

$ seq 6 | pr -5ats,
1,2,3,4,5
6

$ seq 18 | pr -5ats,
1,2,3,4,5
6,7,8,9,10
11,12,13,14,15
16,17,18

关于bash - 组合行时相当于 PHP 内爆的终端命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40297297/

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