मेरे पास एक मछली खोल स्क्रिप्ट है जिसका डिफ़ॉल्ट व्यवहार पूरा होने पर एक ईमेल भेजना है। मैं कमांड लाइन से nomail
तर्क का जवाब देने के लिए इसे संशोधित करना चाहता हूं। तो, उदाहरण के लिए, स्क्रिप्ट सामान्य रूप से चल एक ई-मेल का उत्पादन होगा:एक वैकल्पिक तर्क के साथ एक मछली शेल स्क्रिप्ट लिखना
michaelmichael: ~/bin/myscript
लेकिन अगर nomail
स्विच के साथ चलाने के लिए, यह पुष्टिकरण ईमेल नहीं भेजना होगा:
michaelmichael: ~/bin/myscript nomail
हैं मैं nomail
तर्क के साथ स्क्रिप्ट चलाता हूं, यह ठीक चलता है। nomail
के बिना, अपरिभाषित है और यह एक त्रुटि फेंकता है। मैंने मछली खोल दस्तावेज को खराब कर दिया है, लेकिन ऐसा कुछ भी नहीं लगता है जो काम करेगा। यहाँ मैं क्या है है अब तक
switch $argv
case nomail
## Perform normal script functions
case ???
## Perform normal script functions
mailx -s "Script Done!"
end
इस निम्न त्रुटि फेंकता चल रहा है:
switch: Expected exactly one argument, got 0
जाहिर है यह उम्मीद एक तर्क, मैं सिर्फ वाक्य रचना यह कोई तर्क को स्वीकार करने के लिए कह रही है पता नहीं है , या अगर यह मौजूद है।
मुझे लगता है कि यह बहुत बुनियादी है, लेकिन मुझे शैल स्क्रिप्टिंग बहुत अच्छी तरह से समझ में नहीं आती है।
यह आप विशिष्ट त्रुटि संदेश पोस्ट करता है, तो अधिक उपयोगी है। –
जोड़ा गया। उसके लिए माफ़ करना। – michaelmichael