我想创建 2 列,例如:
1 10
1 20
1 30
1 40
1 50
2 10
2 20
2 30
2 40
2 50
3 10
3 20
3 30
3 40
3 50
请问有什么建议吗?
答案1
使用现代外壳,您可以组合大括号扩展并运行如下内容:
printf %s\\n ID_{1..3}' '{10..50..10}
答案2
如果您有最新版本的 Bash:
for i in {1..3}; do
for j in {10..50..10}; do
echo "$i $j"
done
done
如果您有旧版本:
for i in {1..3}; do
for j in {1..5}; do
echo "$i ${j}0"
done
done
或者,使用seq
:
for i in $(seq 1 3); do
for j in $(seq 10 10 50); do
echo "$i $j"
done
done
答案3
的一个变体唐克里斯斯蒂的回答它只是认识到末尾的零是常数这一事实:
$ printf '%s\n' {1..3}' '{1..5}0
1 10
1 20
1 30
1 40
1 50
2 10
2 20
2 30
2 40
2 50
3 10
3 20
3 30
3 40
3 50