bash - 如何迭代 Bash 中变量定义的一系列数字?

标签 bash shell for-loop syntax

当范围由变量指定时,如何在 Bash 中迭代数字范围?

我知道我可以做到这一点(在 Bash 中称为“序列表达式”documentation):

 for i in {1..5}; do echo $i; done

给出:

1
2
3
4
5

但是,如何用变量替换任一范围端点?这不起作用:

END=5
for i in {1..$END}; do echo $i; done

打印:

{1..5}

最佳答案

for i in $(seq 1 $END); do echo $i; done

编辑:与其他方法相比,我更喜欢seq,因为我真的能记住它;)

关于bash - 如何迭代 Bash 中变量定义的一系列数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56248513/

相关文章:

python - 使用 bash 脚本处理 JSON

bash - 如何在 android shell 中编写文件计数脚本?

linux - 如何将linux命令输出保存为变量列表

linux - Anaconda Python for Gurobi 6.0.4安装报错_Py_FalseStruct

r - R 中是否有一种优雅的方法可以跳过空元素的 for 循环?

用 apply 替换 for 循环以提高性能(使用 weighted.mean)

linux - bash shell sys.path.append 问题

linux - shell 输出文件的奇怪行为 ( Linux )

unix - shell命令相当于按键盘上的回车键

arrays - 如何在MIPS中找到数组的最小值