PowerShell ने वास्तव में वापसी शब्दार्थ को मिटा दिया है - कम से कम जब एक अधिक पारंपरिक प्रोग्रामिंग परिप्रेक्ष्य से देखा जाता है। आपके सिर को चारों ओर लपेटने के लिए दो मुख्य विचार हैं:
- सभी आउटपुट कैप्चर किए गए हैं, और वापस आ गए हैं
- रिटर्न कीवर्ड वास्तव में एक तार्किक निकास बिंदु को इंगित करता है
इस प्रकार, निम्नलिखित दो स्क्रिप्ट ब्लॉक प्रभावी रूप से सटीक एक ही काम करेंगे:
$a = "Hello, World"
return $a
$a = "Hello, World"
$a
return
दूसरे उदाहरण में $ चर को पाइपलाइन पर आउटपुट के रूप में छोड़ दिया गया है और, जैसा कि उल्लेख किया गया है, सभी आउटपुट वापस आ गए हैं। वास्तव में, दूसरे उदाहरण में आप पूरी तरह से रिटर्न को छोड़ सकते हैं और आपको एक ही व्यवहार मिलेगा (रिटर्न स्वाभाविक रूप से पूरा होने और बाहर निकलने के कार्य के रूप में निहित होगा)।
आपकी फ़ंक्शन परिभाषा के बिना मैं यह नहीं कह सकता कि आपको PSMethod ऑब्जेक्ट क्यों मिल रहा है। मेरा अनुमान है कि आपके पास संभवतः कुछ पंक्तियाँ हैं, जिन्हें कैप्चर नहीं किया जा रहा है और आउटपुट पाइपलाइन पर रखा जा रहा है।
यह भी ध्यान देने योग्य है कि आपको शायद उन अर्धविरामों की आवश्यकता नहीं है - जब तक कि आप एक ही पंक्ति में कई अभिव्यक्तियों को नस्ट कर रहे हों।
आप TechNet पर about_Return पेज पर वापसी शब्दार्थ के बारे में अधिक पढ़ सकते हैं , या help return
PowerShell से कमांड को लागू कर सकते हैं।