Dalam skrip di bawah ini - yang meminta pengguna untuk mengonfirmasi bahwa mereka ingin melanjutkan menjalankan skrip yang berpotensi buruk - ketika pengguna memasukkan Y
prompt - itu akan keluar dari case
blok, hanya untuk dikirim kembali ke while
loop lagi.
#! /bin/bash
set -e
echo
echo "bad install start"
echo "-----------------------------------------"
while true; do
read -p "this script will probably fail - do you want to run anyway?" yn
case $yn in
[Yy]*)
##### WHAT GOES HERE?? #####
;;
[Nn]*)
exit ;;
*)
echo "answer y or n" ;;
esac
echo "script has broken out of case back into while loop"
done
echo -e "\e[33m Installing bad packagename \e[0m"
apt-get install sdfsdfdfsd
echo "rest of script - will i keep running?"
Ketika n
dimasukkan, skrip ada sepenuhnya seperti yang diinginkan. Saya ingin tahu bagaimana membuatnya sehingga ketika Y
dimasukkan istirahat script keluar dari kedua case
dan sementara blok, tetapi tidak keluar sama sekali. Apakah ada sesuatu yang bisa saya masukkan untuk placeholder ("Apa yang terjadi di sini ??") untuk melakukan itu?
$TEST=1
seharusnya TEST=1
, dan skrip Anda sangat mungkin bekerja dengan perubahan ini.
[Yn]*)
; Anda mungkin berarti[Yy]*)
.