Until - for 循环用法

Until - for 循环用法

如何将循环“until .... do”与 for 循环一起使用?

例如,在下面的 for 循环中,“for 循环”和命令“command #5, #6, #7”同时运行。

 For i in $(cat file.txt), do  # file.txt is a file contain folders names within a path
 (
 command 1
 command 2
 command 3
 command 4
 ...
 )&
 done
 command5
 command6
 command7
 .....

我想使用“直到“for 循环”完成”,然后“运行命令 #5、#6、#7”

这段代码中使用until .. do有什么问题?

until 
For i in $(cat file.txt), do  # file.txt is a file contain folders names within a path
 (
 command 1
 command 2
 command 3
 command 4
 ...
 )&
 done
 do
 command5
 command6
 command7
 .....

答案1

你还没有给它一个需要满足的实际条件。看这里语法。

对于这种特殊情况,你可以这样做:

done_cond=0

until $done_cond==1; do
    For every variable name saved in a text file, do 
    echo "variable name"
    done

    $done_cond=1
done

echo 'done'

在这种特殊情况下,done_cond 将导致它在 for 循环完成之前不会中断,但有多种方法可以针对不同的用例实现类似的效果。

当然,如果它只是一个 for 循环,那么您首先就不需要“until”。

您发布的第一块代码在之前使用分号(;)而不是逗号(,)将do起作用。

相关内容