विंडोज शक्तियों में, मैं एक स्ट्रिंग में एक चाल कमांड को स्टोर करने की कोशिश कर रहा हूं और फिर इसे निष्पादित करता हूं। क्या कोई मुझे बता सकता है कि यह क्यों काम नहीं करता है?मैं शक्तियों में स्ट्रिंग से तर्क के साथ कमांडलेट निष्पादित क्यों नहीं कर सकता?
PS C:\Temp\> dir
Directory: Microsoft.PowerShell.Core\FileSystem::C:\Temp
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 8/14/2009 8:05 PM 2596 sa.csproj
-a--- 8/15/2009 10:42 AM 0 test.ps1
PS C:\Temp> $str = "mv sa.csproj sb.csproj"
PS C:\Temp> &$str
The term 'mv sa.csproj sb.csproj' is not recognized as a cmdlet, function, operable program, or script file. Verify the
term and try again.
At line:1 char:2
+ &$ <<<< str
PS C:\Temp>
तर्कों के साथ किसी भी आदेश को संग्रहीत करते समय मुझे यह त्रुटि मिलती है। मैं इस सीमा को कैसे दूर करूं?
धन्यवाद है आपको लगता है कि आप (लिंक करने के लिए या) व्याख्या कर सकते हैं और चरित्र क्या करता है की एक विवरण करते हैं? –
'&' सहायता राज्यों की तरह, एकल आदेश, स्क्रिप्ट या स्क्रिप्टब्लॉक निष्पादित करने के लिए है। यह कोई पार्सिंग नहीं करता है, इसलिए यह केवल एक ही तर्क स्वीकार करता है जिसे तब एक अनावश्यक आदेश माना जाता है। यदि आप पैरामीटर जोड़ना चाहते हैं, तो या तो स्क्रिप्ट या स्क्रिप्ट ब्लॉक में कॉल को लपेटें या 'Invoke-Expression' का उपयोग करें। पावरहेल में 'help about_operators' टाइप करके आप ऑपरेटरों का वर्णन करने वाले सहायता पृष्ठ को पा सकते हैं। – Joey