मेरे पास एक .ps1 फ़ाइल है जिसमें मैं कस्टम फ़ंक्शन को परिभाषित करना चाहता हूं।
फ़ाइल की कल्पना करें MyFunctions.ps1 कहा जाता है, और सामग्री इस प्रकार है:
Write-Host "Installing functions"
function A1
{
Write-Host "A1 is running!"
}
Write-Host "Done"
इस स्क्रिप्ट को चलाने के लिए और सैद्धांतिक रूप से A1 फ़ंक्शन को पंजीकृत करने के लिए, मैं उस फ़ोल्डर में नेविगेट करता हूं जिसमें .ps1 फ़ाइल रहती है और फ़ाइल चलाती है:
.\MyFunctions.ps1
यह आउटपुट:
Installing functions
Done
फिर भी, जब मैं A1 को कॉल करने की कोशिश करता हूं, मुझे बस यह कहते हुए त्रुटि मिलती है कि उस नाम से कोई कमांड / फ़ंक्शन नहीं है:
The term 'A1' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling
of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:3
+ A1 <<<<
+ CategoryInfo : ObjectNotFound: (A1:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
मुझे कुछ PowerShell अवधारणाओं को गलत समझना चाहिए। क्या मैं स्क्रिप्ट फ़ाइलों में फ़ंक्शन को परिभाषित नहीं कर सकता हूं?
ध्यान दें कि मैंने अपनी निष्पादन नीति 'रिमोटसाइनड' में पहले ही सेट कर दी है। और मैं फ़ाइल नाम के सामने डॉट का उपयोग करके .ps1 फाइलें चलाना जानता हूं:। \ MyFile.ps1