जवाबों:
[1 टिप्पणी के बाद से संपादित किया गया: @chepner - धन्यवाद!]
/ बिन / बैश फ़ंक्शन नामों में हाइफ़न की अनुमति देता है, / बिन / श (बॉर्न शेल) नहीं करता है। यहां, अपमानजनक "कुछ-फ़ंक्शन" को बैश द्वारा निर्यात किया गया था, और बैश को यम कहा जाता है जिसे / बिन / श कहा जाता है जिसने ऊपर त्रुटि की सूचना दी।
तय: नाम बदलने का कार्य हाइफ़न नहीं है
मैन बैश का कहना है कि बैश पहचानकर्ता शामिल हो सकते हैं: "केवल अल्फ़ान्यूमेरिक वर्ण और अंडरस्कोर"
/ बिन / श त्रुटि बहुत अधिक स्पष्ट है:
some-function () { :; }
श: `कुछ-कार्य ': एक मान्य पहचानकर्ता नहीं
bash
, एक फ़ंक्शन नाम में एक हाइफ़न की अनुमति है, बस एक पैरामीटर नाम में नहीं।