Tôi là người mới chơi bash nhưng tôi muốn tạo một tập lệnh trong đó tôi muốn cho phép người dùng chọn nhiều tùy chọn từ danh sách các tùy chọn.
Về cơ bản những gì tôi muốn là một cái gì đó tương tự như ví dụ dưới đây:
#!/bin/bash
OPTIONS="Hello Quit"
select opt in $OPTIONS; do
if [ "$opt" = "Quit" ]; then
echo done
exit
elif [ "$opt" = "Hello" ]; then
echo Hello World
else
clear
echo bad option
fi
done
(Được cung cấp từ http://www.faqs.org/docs/Linux-HOWTO/Bash-Prog-Intro-HOWTO.html#ss9.1 )
Tuy nhiên, tập lệnh của tôi sẽ có nhiều tùy chọn hơn và tôi muốn cho phép nhiều bội số được chọn. Vì vậy, một cái gì đó như thế này:
1) Tùy chọn 1
2) Tùy chọn 2
3) Tùy chọn 3
4) Tùy chọn 4
5) Xong
Có phản hồi về những cái họ đã chọn cũng sẽ rất tuyệt, ví dụ như dấu cộng bên cạnh những cái họ đã chọn. Ví dụ: nếu bạn chọn "1" tôi muốn trang để xóa và in lại:
1) Option 1 +
2) Option 2
3) Option 3
4) Option 4
5) Done
Sau đó, nếu bạn chọn "3":
1) Option 1 +
2) Option 2
3) Option 3 +
4) Option 4
5) Done
Ngoài ra, nếu họ chọn lại (1) tôi muốn "bỏ chọn" tùy chọn:
1) Option 1
2) Option 2
3) Option 3 +
4) Option 4
5) Done
Và cuối cùng khi Xong được nhấn Tôi muốn một danh sách những cái đã được chọn sẽ được hiển thị trước khi chương trình thoát, ví dụ nếu trạng thái hiện tại là:
1) Option 1
2) Option 2 +
3) Option 3 +
4) Option 4 +
5) Done
Nhấn 5 nên in:
Option 2, Option 3, Option 4
... và kịch bản chấm dứt.
Vì vậy, câu hỏi của tôi - điều này có thể có trong bash không, và nếu có ai có thể cung cấp một mẫu mã không?
Bât cư lơi khuyên nao cung se được đanh gia cao.