【发布时间】:2013-12-31 06:38:01
【问题描述】:
说到 shell 脚本,我还是个新手。长话短说,我正在尝试每次迭代将数组的值增加一个。这是我的代码
cmd=(1 2 3 4 5 6 7 8 ................) // How can I pass numbers 1 to 1000 with out having to type manually.
${cmd[@]}
for (( i = 0 ; i < ${#cmd[@]} ; i++ )) do
echo ${cmd[$i]}"
done
一种方法是 cmd=() ,然后在循环中添加 "let cmd[i]++" 行,但它对我不起作用。提前致谢
【问题讨论】:
-
您是否只是想将
cmd数组初始化为数字1...1000?还是要先初始化数组,然后再增加数组的元素? -
@robmayoff 无论哪种方式都可以。只要命令执行的值每次迭代都增加 1。我正在尝试我被建议做的事情。(以下建议)。但如果我们可以通过其他方式做到这一点,请分享。也很高兴知道
-
在 bash 中 {1..1000} 被评估为 1 2 3 4 5 6 到 1000。较新的 bash 版本甚至支持像 {1..11..2} 这样的增量将评估为 1 3 5 7 9 11.
-
你可以这样做:
for (( i=1 ; i <= 10000; i++ )) do echo $i; done -
@anubhava 我需要它在一个数组中。
标签: arrays linux bash shell sh