“Yes/No” in Bash Script – Prompt for Confirmation
Article Number: 483 | Rating: 5/5 from 2 votes | Last Updated: Mon, Feb 18, 2019 2:34 PM
Very often in bash scrips you need to ask for user input that requires a Yes or No answer.
For example, you may want to put a quick “Are you sure?” prompt for confirmation before execution of some potentially dangerous part of a bash script.
In this article you’ll find three easiest and fastest ways to prompt for “Yes/No” confirmation in bash script.
Prompt To Continue In Bash
The best way to prompt for a confirmation to continue in a bash script is to use the read command (source):
read -p "Are you sure? " -n 1 -r
echo # (optional) move to a new line
if [[ ! $REPLY =~ ^[Yy]$ ]]
then
exit 1
fi
Simple “Yes/No” Dialog In Bash
One of the most widely used method to ask user for a confirmation in a bash script is to combine read + case commands (source):
while true; do
read -p "Do you wish to install this program?" yn
case $yn in
[Yy]* ) make install; break;;
[Nn]* ) exit;;
* ) echo "Please answer yes or no.";;
esac
done
Select From “Yes/No” Menu In Bash
Another easy method is to use select command (source):
echo "Do you wish to install this program?"
select yn in "Yes" "No"
case $yn in
Yes ) make install;;
No ) exit;;
esac

