में सेट नहीं हैं। मैंने जो भी सिस्टम पहले उपयोग किया है, वह मेरी सरल बैश स्क्रिप्ट जारी रखता है यदि एक पंक्ति गैर-शून्य परिणाम देता है। कुछ नई उबंटू एलटीएस 14.x सिस्टम अब पहली विफलता से बाहर निकलते हैं। मैंनेबैश स्क्रिप्ट 1 गैर-शून्य परिणाम के बाद बाहर निकल रही है, भले ही हम ENV
echo $-
और ई सूची में प्रकट नहीं होता है। मुझे और क्या देखना चाहिए?
टिप्पणी से जोड़ा गया:
$ declare -f command_not_found_handle
command_not_found_handle()
{
if [ -x /usr/lib/command-not-found ]; then
/usr/lib/command-not-found -- "$1";
return $?;
else
if [ -x /usr/share/command-not-found/command-not-found ]; then
/usr/share/command-not-found/command-not-found -- "$1";
return $?;
else
printf "%s: command not found\n" "$1" 1>&2;
return 127;
fi;
fi
}
क्या 'declare -f command_not_found_handle' आउटपुट कुछ भी घोषित करता है? –
हां, परिणाम अपेक्षित है मुझे लगता है कि 'command_not_found_handle() { यदि [-x/usr/lib/command-not-found]; फिर /usr/lib/कमांड-नहीं मिला - "$ 1"; $ वापसी ?; अन्य यदि [-x/usr/share/command-not-found/command-not-found]; फिर /usr/share/command-not-found/कमांड-नहीं मिला - "$ 1"; $ वापसी ?; अन्य printf "% s: कमांड नहीं मिला \ n" "$ 1" 1> और 2; वापसी 127; फाई; fi } ' –
इसलिए यदि आप किसी भी कमांड का उपयोग करने का प्रयास करते हैं तो आपकी स्क्रिप्ट बाहर निकल जाएगी, जहां उन स्क्रिप्ट्स में से कोई भी शून्य शून्य नहीं लौटाता है या जब इनमें से कोई भी स्क्रिप्ट नहीं मिलती है। आपकी लिपि से बाहर निकलने वाला क्या निकास कोड है? स्क्रिप्ट में किस बिंदु पर? 'Set -x' आपको क्या दिखाता है? –