PowerShell传递变量
我正在尝试调用powershell中的函数,但将变量传递给它,这样我就不需要使用不同的值重复funxtion X多次。我希望这样,当我调用函数时,我只需键入:PowerShell传递变量,powershell,Powershell,我正在尝试调用powershell中的函数,但将变量传递给它,这样我就不需要使用不同的值重复funxtion X多次。我希望这样,当我调用函数时,我只需键入: Foo(Red,12,1.8) 以及通用函数foo,如下所示: function Foo(Colour, Age, Height){ <# Function does something with data here #> } 功能Foo(颜色、年龄、身高){ } 是否可以使用powershell进行此操作?
Foo(Red,12,1.8)
以及通用函数foo,如下所示:
function Foo(Colour, Age, Height){
<# Function does something with data here #>
}
功能Foo(颜色、年龄、身高){
}
是否可以使用powershell进行此操作?如果可以,是否会在函数完成后保存对这些变量所做的任何更改?是请尝试默认值:
function Foo($Colour='Red',$Age=12,$Height=1.8){
<# Function does something with data here #>
}
函数Foo($color='Red',$Age=12,$Height=1.8){
}
是尝试默认值:
function Foo($Colour='Red',$Age=12,$Height=1.8){
<# Function does something with data here #>
}
函数Foo($color='Red',$Age=12,$Height=1.8){
}
是,您可以在函数中使用参数
默认情况下,参数仅在函数范围内更改,但如果愿意,可以选择返回与结果相同的参数
示例(使用飞溅)-
是的,您可以在函数中使用参数 默认情况下,参数仅在函数范围内更改,但如果愿意,可以选择返回与结果相同的参数 示例(使用飞溅)-
调用语法应该是
Foo-Red 12 1.8
或Foo-color-Red-Age 12-Height 1.8
,但如果不是这样,PowerShell具有参数化函数。不过,默认情况下,对函数内声明参数的更改不会反映在调用范围中。你能描述一下你的用例吗?为什么您希望您需要多次调用Foo
?谢谢,对于用例,我刚刚意识到这整个过程可能不起作用,因为我每次都需要传递不同的全局变量并更改这些精确的全局变量。您需要将参数作为引用传递给函数,并将函数设置为接受引用。请参阅:获取有关\u ref的帮助。调用语法将是Foo Red 12 1.8
或Foo-color Red-Age 12-Height 1.8
,但如果不是这样,则PowerShell具有参数化函数。不过,默认情况下,对函数内声明参数的更改不会反映在调用范围中。你能描述一下你的用例吗?为什么您希望您需要多次调用Foo
?谢谢,对于用例,我刚刚意识到这整个过程可能不起作用,因为我每次都需要传递不同的全局变量并更改这些精确的全局变量。您需要将参数作为引用传递给函数,并将函数设置为接受引用。请参阅:获取关于_ref的帮助。谢谢,我已经意识到我现在需要能够传递3组全局变量,每个都具有相同的功能,但用于3个独立的系统(例如,Age1、Age2、Age3),让它使用并更改这些变量,然后再次返回它们…我觉得这个答案最接近,那么,我将如何实现上述目标?谢谢,您可以将我的示例用于更大的哈希表或哈希表数组。其他选项包括从函数中访问全局变量或构建类。谢谢,我意识到我现在需要能够传递3组全局变量,每个全局变量具有相同的函数,但用于3个独立的系统(例如,Age1、Age2、Age3),让it使用并更改这些变量,然后再次返回它们…我觉得这个答案最接近,那么我如何实现上述目标?谢谢,您可以将我的示例用于更大的哈希表或哈希表数组。其他选项包括从函数访问全局变量,或构建类。