Sof*_*fia 4 bash shell-script for
当用户在开始时指定 n 时,如何迭代循环 n 次?
我编写了一个 shell 脚本,需要将其中的某个部分重复 n 次(取决于用户希望的次数)。
到目前为止,我的脚本如下所示:
echo "how many times would you like to print Hello World?"
read num
for i in {1.."$num"}
do
echo "Hello World"
done
Run Code Online (Sandbox Code Playgroud)
如果我将“num”更改为诸如“5”之类的数字,则循环可以工作,但是我需要能够让用户指定迭代循环的次数。
您可以使用 seq
for i in $(seq 1 "$num")
Run Code Online (Sandbox Code Playgroud)
或者你的 shell 可能支持 C 风格的循环,例如在 bash 中
for ((i=0; i<$num; i++))
Run Code Online (Sandbox Code Playgroud)
echo "how many times would you like to run your loop ?"
read max
i=0
while [ "$((i+=1))" -le "$max" ]
do
# whatever you want to do here
done
Run Code Online (Sandbox Code Playgroud)