我想在bash中运行二维for循环,其中第一个索引i
从1变为n
,第二个索引j
从{{1}开始运行到1
。我怎么能这样做?
到目前为止,我能够编写一个for循环,其中第二个索引i-1
从j
运行到1
:
i
如何让for i in $(seq 1 $n); do
for j in $(seq 1 $i); do
...
done
done
转到j
代替?最简单的方法是什么?
答案 0 :(得分:4)
您可以使用BASH的算术构造((...))
:
for ((i=1; i<=n; i++)); do
for ((j=1; j<=i; j++)); do
echo "$i:$j"
done
done