Saya seorang pemula bash, tetapi saya ingin membuat skrip di mana saya ingin memungkinkan pengguna untuk memilih beberapa opsi dari daftar opsi.
Pada dasarnya yang saya inginkan adalah sesuatu yang mirip dengan contoh di bawah ini:
#!/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
(Bersumber dari http://www.faqs.org/docs/Linux-HOWTO/Bash-Prog-Intro-HOWTO.html#ss9.1 )
Namun skrip saya akan memiliki lebih banyak opsi, dan saya ingin memperbolehkan beberapa kelipatan untuk dipilih. Jadi sesuatu seperti ini:
1) Opsi 1
2) Opsi 2
3) Opsi 3
4) Opsi 4
5) Selesai
Memiliki umpan balik tentang yang telah mereka pilih juga akan sangat bagus, misalnya tanda plus di samping yang sudah mereka pilih. Misalnya jika Anda memilih "1" Saya ingin halaman dihapus dan dicetak ulang:
1) Option 1 +
2) Option 2
3) Option 3
4) Option 4
5) Done
Kemudian jika Anda memilih "3":
1) Option 1 +
2) Option 2
3) Option 3 +
4) Option 4
5) Done
Juga, jika mereka kembali memilih (1) Saya ingin "membatalkan pilihan" opsi:
1) Option 1
2) Option 2
3) Option 3 +
4) Option 4
5) Done
Dan akhirnya ketika Selesai ditekan saya ingin daftar yang dipilih untuk ditampilkan sebelum program keluar, misalnya jika keadaan saat ini adalah:
1) Option 1
2) Option 2 +
3) Option 3 +
4) Option 4 +
5) Done
Menekan 5 seharusnya mencetak:
Option 2, Option 3, Option 4
... dan skrip berakhir.
Jadi pertanyaan saya - apakah ini mungkin dalam bash, dan jika demikian apakah ada yang bisa memberikan contoh kode?
Saran apa pun akan sangat dihargai.