我只发现如何等待用户输入。然而,我只是想暂停,这样我的while为真就不会使我的计算机崩溃。
我尝试暂停(1),但它说-bash:语法错误接近意外的令牌“1”。怎样才能做到呢?
我只发现如何等待用户输入。然而,我只是想暂停,这样我的while为真就不会使我的计算机崩溃。
我尝试暂停(1),但它说-bash:语法错误接近意外的令牌“1”。怎样才能做到呢?
当前回答
使用sleep命令。
例子:
sleep .5 # Waits 0.5 second.
sleep 5 # Waits 5 seconds.
sleep 5s # Waits 5 seconds.
sleep 5m # Waits 5 minutes.
sleep 5h # Waits 5 hours.
sleep 5d # Waits 5 days.
在指定时间单位时,也可以使用小数;例如,睡眠1.5秒
其他回答
还有:
read -p "Press enter to continue"
read -r -p "Wait 5 seconds or press any key to continue immediately" -t 5 -n 1 -s
按下任意一个按钮后继续
有关更多信息,请参阅read manpage ref 1, ref 2
使用sleep命令。
例子:
sleep .5 # Waits 0.5 second.
sleep 5 # Waits 5 seconds.
sleep 5s # Waits 5 seconds.
sleep 5m # Waits 5 minutes.
sleep 5h # Waits 5 hours.
sleep 5d # Waits 5 days.
在指定时间单位时,也可以使用小数;例如,睡眠1.5秒
运行多个sleep和命令
sleep 5 && cd /var/www/html && git pull && sleep 3 && cd ..
这将在执行第一个脚本之前等待5秒,然后在再次更改目录之前再次休眠3秒。
在运行命令行之前,使用trap暂停并检查命令行(使用tput彩色显示)
trap 'tput setaf 1;tput bold;echo $BASH_COMMAND;read;tput init' DEBUG
按任意键继续
使用set -x来调试命令行