gpt4 book ai didi

bash - 如何在 bash 中生成笛卡尔积?

转载 作者:行者123 更新时间:2023-11-29 08:50:53 25 4
gpt4 key购买 nike

我想生成这样的文件([1-3]X[1-5] 的笛卡尔积):

1 1
1 2
1 3
1 4
1 5
2 1
2 2
2 3
2 4
2 5
3 1
3 2
3 3
3 4
3 5

我可以使用嵌套循环来做到这一点:

for i in $(seq 3) 
do
for j in $(seq 5)
do
echo $i $j
done
done

有没有没有循环的解决方案?

最佳答案

合并两个brace expansions !

$ printf "%s\n" {1..3}" "{1..5}
1 1
1 2
1 3
1 4
1 5
2 1
2 2
2 3
2 4
2 5
3 1
3 2
3 3
3 4
3 5

这通过使用单个大括号扩展来实现:

$ echo {1..5}
1 2 3 4 5

然后与另一个结合:

$ echo {1..5}+{a,b,c}
1+a 1+b 1+c 2+a 2+b 2+c 3+a 3+b 3+c 4+a 4+b 4+c 5+a 5+b 5+c

关于bash - 如何在 bash 中生成笛卡尔积?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23363003/

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