मैं बैश (आदर्श रूप से केस-असंवेदनशील) में गिरावट वाले मामलों के साथ स्विच स्टेटमेंट के सही सिंटैक्स की तलाश कर रहा हूं। PHP में मैं इसे पसंद करता हूँ:
switch($c) {
case 1:
do_this();
break;
case 2:
case 3:
do_what_you_are_supposed_to_do();
break;
default:
do_nothing();
}
मुझे बैश में भी ऐसा ही चाहिए:
case "$C" in
"1")
do_this()
;;
"2")
"3")
do_what_you_are_supposed_to_do()
;;
*)
do_nothing();
;;
esac
यह किसी तरह काम नहीं करता है: do_what_you_are_supposed_to_do()$ C 2 OR 3 होने पर फ़ंक्शन को निकाल दिया जाना चाहिए।
do_nothing()SKIP स्टेटमेंट हो सकता है का उपयोग करें :।
function fname { echo "Inside fname"; return 0; }या तो फंक्शन का उपयोग कर सकते हैं याfname() { echo "inside fname"; return 0; }किसी फंक्शन कॉल पर पैरेंस लगा सकते हैं, जैसे कि यह एक फंक्शन डिफिनेशन है। कार्य किसी अन्य कमांड लाइन कार्यक्रम जैसे जैसे बुलाया जाना चाहिएmv,cp,rsync,ls,cd, आदि ... इस मामले में हम फोन में fname इतना चाहते:fname $ARGS।