GNU बैश (संस्करण 4.0.35 (1) -release (x86_64-suse-linux-gnu) का उपयोग करते हुए, मैं रेगुलर एक्सप्रेशंस के साथ एक टेस्ट को नकारना चाहूंगा। उदाहरण के लिए, मैं सशर्त रूप से PATH वैरिएबल में एक पथ जोड़ना चाहूंगा। यदि पथ पहले से ही वहां नहीं है, जैसे कि:
TEMP=/mnt/silo/bin
if [[ ${PATH} =~ ${TEMP} ]] ; then PATH=$PATH; else PATH=$PATH:$TEMP; fi
TEMP=/mnt/silo/Scripts:
if [[ ${PATH} =~ ${TEMP} ]] ; then PATH=$PATH; else PATH=$PATH:$TEMP; fi
TEMP=/mnt/silo/local/bin
if [[ ${PATH} =~ ${TEMP} ]] ; then PATH=$PATH; else PATH=$PATH:$TEMP; fi
export PATH
मुझे यकीन है कि ऐसा करने के लिए एक लाख तरीके हैं, लेकिन मैं यह जानना चाहूंगा कि क्या सशर्त किसी भी तरह से नकारा जा सकता है, जैसे कि (गलत):
TEMP=/mnt/silo/bin
if ![[ ${PATH} =~ ${TEMP} ]] ; then PATH=$PATH:$TEMP; fi
TEMP=/mnt/silo/Scripts:
if ![[ ${PATH} =~ ${TEMP} ]] ; then PATH=$PATH:$TEMP; fi
TEMP=/mnt/silo/local/bin
if ![[ ${PATH} =~ ${TEMP} ]] ; then PATH=$PATH:$TEMP; fi
export PATH