我在bash中有以下for循环,该循环在chrooted目录中创建循环设备。
for var in 0 1 2 3 .. 7
do
MAKEDEV -d ${CHROOT}/dev -x loop$var
done
这对我不起作用,因为它在创建loop3之后实际上需要..并尝试创建loop ..并失败。但是根据本教程,它应该可以正常工作。我通过执行以下操作使其工作:
for (( var=0; var<=7; var++ ))
do
MAKEDEV -d ${CHROOT}/dev -x loop$var
done
我仍然想知道为什么我第一次尝试的for循环不起作用。请帮忙。
我想您是从字面上阅读本教程的。turorial确实说
for VARIABLE in 1 2 3 4 5 .. N
但是从字面上看,这不是正确的bash语法-我认为作者只是想说,对于这种for循环,您需要明确列出要迭代的所有值。因此,在您的情况下,这将是:
for var in 0 1 2 3 4 5 6 7
本教程还提到了括号扩展,@ glennjackman在回答中给出了完全正确的语法。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句