我有这个bash脚本,基本上可以启动带有进度指示器的Web和Selenium服务器。由于启动selenium服务器需要一些时间,因此我正在无限循环中检查状态。
问题是,在等待启动时,我不小心按下了键,该键显示在屏幕上,如果循环结束(超时),它也将显示在命令提示符下。
我想在循环内禁用所有用户输入(当然除了控制键):
start_selenium() { echo -n "Starting selenium server" java -jar ${selenium_jar} &> $selenium_log & # wait for selenium server to spin up! (add -v for verbose output) i=0 while ! nc -z localhost 4444; do sleep 1 echo -n "." ((i++)) if [ $i -gt 20 ]; then echo echo -e $bg_red$bold"Selenium server connection timed out"$reset exit 1 fi done }
用于stty关闭键盘输入。
stty
stty -echo #### Ur Code here #### stty echo
-echo关闭键盘输入并stty echo重新启用键盘输入。
-echo
stty echo