向用户提示是否界面,以便重新执行代码块。假设代码块是 echo“Hello”
答案1
您可以尝试一些简单的方法,例如:
#!/bin/bash
while true; do
echo "Hello world"
read -p "Re-run this program? (y/n)" answer
if [ "$answer" == "n" ]; then
break
fi
done
这将在循环内打印“Hello world”,并需要输入“n”才能跳出循环。
答案2
使用循环重复一系列命令。用于read
获取用户的输入:
#!/bin/bash
want_to_print=yes
while [[ $want_to_print == yes ]] ; do
read -p 'Hello ' want_to_print
done
答案3
有多种方法可以做到这一点,使用多种语言。由于 bash 已经完成,我将加入以下内容AWK
:
$ awk 'BEGIN{ MSG="yes/no?"; while ( 1 ){ print MSG;getline line; if (line == "yes") {print "HELLOWORLD"} else {exit}}}'
yes/no?
yes
HELLOWORLD
yes/no?
yes
HELLOWORLD
yes/no?
no
xieerqi:
$