[Shell script] Tạo câu hỏi xác nhận [Y/N] – Confirmation Prompt


Bài viết này sẽ hướng dẫn các bạn, tạo 1 câu hỏi (Confirmation Prompt) để người dùng xác nhận (Yes/No) trong lập trình Shell Script (Bash)

Đầu tiên tạo 1 file 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ả: 

Nguồn: vinasupport.com

             
SHARE

Bài viết liên quan

mode_edit Bình luận của bạn

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

account_circle
web