खोज…


साधारण मामला बयान

बैश के सभी संस्करणों द्वारा समर्थित अपने सरलतम रूप में, केस स्टेटमेंट उस मामले को निष्पादित करता है जो पैटर्न से मेल खाता है। ;; ऑपरेटर पहले मैच के बाद टूट जाता है, यदि कोई हो।

#!/bin/bash

var=1
case $var in
1)
  echo "Antartica"
 ;;
2)
  echo "Brazil"
 ;;
3)
  echo "Cat"
 ;;
esac

आउटपुट:

Antartica

के माध्यम से गिरावट के साथ मामला बयान

4.0

4.0 के बाद से, एक नया ऑपरेटर ;& पेश किया गया था जो तंत्र के माध्यम से गिरावट प्रदान करता है।

#! / Bin / bash

var=1
case $var in
1)
  echo "Antartica"
  ;&
2)
  echo "Brazil"
  ;&
3)
  echo "Cat"
  ;&
esac

आउटपुट:

Antartica
Brazil
Cat

यदि बाद के पैटर्न (ओं) से मेल खाते हैं तो ही गिरें

4.0

बश 4.0 के बाद से, एक और ऑपरेटर ;;& को पेश किया गया था जो केवल बाद के केस स्टेटमेंट (एस), यदि कोई हो, मैच में पैटर्न के माध्यम से गिरता है

#!/bin/bash

var=abc
case $var in
a*)
  echo "Antartica"
  ;;&
xyz)
  echo "Brazil"
  ;;&
*b*)
  echo "Cat"
  ;;&
esac

आउटपुट:

Antartica
Cat

नीचे दिए गए उदाहरण में, abc पहले और तीसरे मामले दोनों से मेल खाता है, लेकिन दूसरा मामला नहीं। इसलिए, दूसरे मामले का निष्पादन नहीं किया जाता है।



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow