নীচের স্ক্রিপ্টে - যা ব্যবহারকারীকে নিশ্চিত করতে অনুরোধ করে যে তারা সম্ভাব্য খারাপ স্ক্রিপ্টটি চালিয়ে যেতে চাইছে - যখন ব্যবহারকারী Y
প্রম্পটে প্রবেশ করবে - এটি case
ব্লকটি ভেঙে যাবে , কেবল while
আবার লুপটিতে আবার পাঠানো হবে ।
#! /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?"
যখন n
প্রবেশ করানো হয়, স্ক্রিপ্ট সম্পূর্ণভাবে কাঙ্ক্ষিত বিদ্যমান। আমি এটি কীভাবে তৈরি করব তা জানতে চাই যাতে Y
স্ক্রিপ্টটি প্রবেশ করার সাথে সাথে উভয়টি case
এবং যখনই দুটি ব্লক বিচ্ছিন্ন হয়ে যায় তবে পুরোপুরি প্রস্থান হয় না। প্লেসোল্ডার ("এখানে কী যায় ??") তা করার জন্য আমি কি কিছু রাখতে পারি?
আপনি যে কোনো ক্ষেত্রে যে আপনার কোড যেহেতু আমি প্রথম উত্তর দিলেন, কিন্তু নোট সম্পাদিত
—
ধাগ
$TEST=1
হওয়া উচিত TEST=1
, এবং আপনার স্ক্রিপ্ট এই পরিবর্তন এর সাথে কাজ করা খুব সম্ভাবনা রয়েছে।
দোহ, হ্যাঁ আমি দেখেছি যখন পরীক্ষার সময়!
—
the_velour_fog 20
@ ধাগ আমার ধারণা আমি আপনার সম্পাদনার উন্নতি করেছি — দয়া করে একবার দেখুন take মনে হচ্ছে আপনার লক্ষ্যটি কোডটিকে এমন কোনও কিছুতে পুনর্লিখন করা যেখানে আপনার গৃহীত উত্তরগুলি ভাল ফিট করে এবং আমি মনে করি এটি এখনই নিকটে।
—
ডার্বার্ট
@ডারবার্ট: আপনার সম্পাদনাটি আমার কাছে দুর্দান্ত দেখাচ্ছে; এটি অবশ্যই প্রশ্নকে আরও পরিষ্কার করে দেয়।
—
ধাগ
[Yn]*)
; আপনি সম্ভবত বোঝানো[Yy]*)
।