3
入力を求めるプロンプトが表示され、あらかじめ設定された時間内に応答がない場合、スクリプトを続行するにはどうすればよいですか。x秒間待ってからユーザーに入力とキャンセルのプロンプトを表示する
たとえばこれは、現時点では私が持っているもののようなものです:
read -p "Would you like to reboot? (y/n) " yn
case $yn in
[Yy]*) echo "shutting down"; break;;
[Nn]*) echo "cancelled shutdown"; break;;
*) echo "Please answer y or n.";;
esac
私は何の応答が受信されない場合、プロンプトは、その後2分間端末に座ってしたいしかし、私のスクリプトを続行します。
私はサブシェルで入力を実行することでこれが可能かもしれないと漠然と思っていますが、同時にタイムアウトを実行する方法はわかりません。
sleep 200s
kill the prompt
continue...
鮮やかでシンプルです。ありがとう – Inti