2015-06-02 57 views

回答

3

不,我怕PowerShell不是那样设计的。你必须考虑在scopes,关于这个主题的更多信息,请阅读PowerShell的帮助about scopes

键入这在你的PowerShell ISE /控制台:

help about_Scopes 

简短的回答是,如果你想改变一个变量,它是在全球范围内,你应该解决全球范围内:

$m=2 
function f 
{ 
    $Global:m=3 
} 
f 
$m 

除非您明确将其定义为ScriptGlobal,否则在Function内创建的所有变量在函数外部都是不可见的。最佳做法是将结果的某个功能保存在另一个变量中,以便您可以在脚本范围内使用它:

$Number = 5 

Function Foo { 
    $Number * 10 
} 
$Result = Foo 

# Now you can use the value outside the function: 
"The result of the function was '$Result'"