Command

直到 - for 循環使用

  • August 18, 2016

如何將循環“直到 …. 做”與 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 .. 有什麼問題?

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
.....

你還沒有給它一個實際滿足的條件。有關語法,請參見此處

對於這種特殊情況,您可以執行以下操作:

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 循環,你一開始就不需要’直到’。

您發布的第一個程式碼塊,在它之前使用分號 (;) 而不是逗號 (,) do

引用自:https://unix.stackexchange.com/questions/304267