我有一个旧版本的 bash:3.2.25 我正在尝试编写一个 for 循环:
#!/bin/bash
filename="K"
for k in {2..20..2}
do
filename=$filename$k
done
这应该给我:
K2
K4
.
.
K20
但这就是它给我的:
K{2..20..2}
K{2..20..2}
.
.
K{2..20..2}
是因为它是旧版本的 bash 吗?我怎样才能让它工作?列出所有值不是解决方案,因为我将不得不使用 {5..201}。
最佳答案
我相信这是在 bash 4 中添加的。
你可以这样做:
for (( k=5; k<=201; k+=2 )); do
filename=$filename$k
done
关于bash 循环 : for loop in older bash versions,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17841796/