ฉันเป็นมือใหม่ แต่ฉันต้องการสร้างสคริปต์ที่ฉันต้องการอนุญาตให้ผู้ใช้เลือกหลายตัวเลือกจากรายการตัวเลือก
โดยพื้นฐานแล้วสิ่งที่ฉันต้องการคือสิ่งที่คล้ายกับตัวอย่างด้านล่าง:
#!/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
(ที่มาจากhttp://www.faqs.org/docs/Linux-HOWTO/Bash-Prog-Intro-HOWTO.html#ss9.1 )
อย่างไรก็ตามสคริปต์ของฉันจะมีตัวเลือกเพิ่มเติมและฉันต้องการอนุญาตให้เลือกหลายรายการ ดังนั้นสิ่งนี้:
1) ตัวเลือก 1
2) ตัวเลือก 2
3) ตัวเลือก 3
4) ตัวเลือก 4
5) เสร็จสิ้น
การมีข้อเสนอแนะเกี่ยวกับสิ่งที่พวกเขาเลือกจะดีเช่นกันบวกเครื่องหมายที่อยู่ถัดจากสิ่งที่พวกเขาเลือกไว้แล้ว เช่นหากคุณเลือก "1" ฉันต้องการหน้าเพื่อล้างและพิมพ์ซ้ำ:
1) Option 1 +
2) Option 2
3) Option 3
4) Option 4
5) Done
จากนั้นหากคุณเลือก "3":
1) Option 1 +
2) Option 2
3) Option 3 +
4) Option 4
5) Done
นอกจากนี้หากพวกเขาเลือกอีกครั้ง (1) ฉันต้องการให้ "ยกเลิกการเลือก" ตัวเลือก:
1) Option 1
2) Option 2
3) Option 3 +
4) Option 4
5) Done
และในที่สุดเมื่อกดเสร็จสิ้นฉันต้องการรายการที่เลือกให้แสดงก่อนที่โปรแกรมจะออกเช่นในกรณีที่สถานะปัจจุบันคือ:
1) Option 1
2) Option 2 +
3) Option 3 +
4) Option 4 +
5) Done
กด 5 ควรพิมพ์:
Option 2, Option 3, Option 4
... และสคริปต์จะสิ้นสุดลง
ดังนั้นคำถามของฉัน - เป็นไปได้ในการทุบตีและถ้าเป็นเช่นนั้นทุกคนสามารถให้ตัวอย่างรหัสได้หรือไม่
คำแนะนำใด ๆ ที่จะได้รับการชื่นชมมาก