Trong bài viết này, chúng tôi sẽ hướng dẫn bạn cách tạo một câu hỏi xác nhận (Confirmation Prompt) cho người dùng (Yes/No) trong lập trình Shell Script (Bash).
Để bắt đầu, bạn sẽ tạo một tệp bash có tên là “confirm.sh” với nội dung như sau:
Với Bash có version >= 3.2
#!/bin/bash
# for Bash >= version 3.2:
read -r -p "Are you sure? [y/n] " response
if [[ "$response" =~ ^([yY])+$ ]]
then
echo "You have entered y"
else
echo "You have entered n"
fi
Với Bash có version >= 4.x
#!/bin/bash
read -r -p "Are you sure? [y/N] " response
response=${response,,} # tolower
if [[ "$response" =~ ^(yes|y)$ ]]
then
echo "You have entered y"
else
echo "You have entered n"
fi
Bây giờ chúng ta chạy thử với command sau trên Linux
./confirm.sh
Kết quả:

Nếu các bạn muốn tự động trả lời câu hỏi thì có thể sử dụng command echo hoặc yes để pass qua câu hỏi.
echo 'y' | ./confirm.sh yes 'y' | ./confirm.sh
Kết quả:
