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ả: