Terkadang saya perlu meminta iya kepada pengguna / tidak untuk mengkonfirmasi sesuatu.
Biasanya saya menggunakan sesuatu seperti ini:
# Yes/no dialog. The first argument is the message that the user will see.
# If the user enters n/N, send exit 1.
check_yes_no(){
while true; do
read -p "$1" yn
if [ "$yn" = "" ]; then
yn='Y'
fi
case "$yn" in
[Yy] )
break;;
[Nn] )
echo "Aborting..."
exit 1;;
* )
echo "Please answer y or n for yes or no.";;
esac
done;
}
Apakah ada cara yang lebih baik untuk melakukannya? Apakah utilitas ini mungkin sudah ada di /bin
folder saya ?
command-line
bash
c0rp
sumber
sumber
select
, tetapi sebaliknya saya tidak melihat cara yang lebih sederhana.Jawaban:
Ah, ada sesuatu yang built-in:
zenity
adalah program dialog grafis:Selain itu
zenity
, Anda dapat menggunakan salah satu dari:sumber
dialog
atauwhiptail
lebih cocok untuk CLI?yad
,, yang memiliki lebih banyak peningkatan dan lebih sedikit bug IMO.Itu terlihat baik bagi saya. Saya hanya akan membuatnya sedikit "lakukan atau mati":
return 0
return 1
Dengan begitu Anda dapat melakukan sesuatu seperti:
Dengan
select
saran @ muru , fungsinya bisa sangat singkat:sumber
Sebagai kesimpulan saya menulis skrip ini :
Versi skrip terbaru dapat ditemukan di sini . Isi gratis untuk mengubah / mengedit
sumber
Saya menggunakan yang berikut ini:
sumber
sumber