Bash Powershell间接扩展变量
我们有如下bash间接展开变量 ${!变量} powershell中是否有任何等效语法?? 如果没有,是否有解决办法 添加示例 $username\u master=“SomeValue” $branch=“master” $name=“username”+$branch $value=$($name)-->这里应该解析$name->username\u master,然后应该解析$username\u master->“SomeValue” 因此,echo$value应该输出“SomeValue” 通过输出“SomeValue”的${!value}可以在bash中实现同样的功能,如何在powershell中实现同样的功能Bash Powershell间接扩展变量,bash,powershell,variables,Bash,Powershell,Variables,我们有如下bash间接展开变量 ${!变量} powershell中是否有任何等效语法?? 如果没有,是否有解决办法 添加示例 $username\u master=“SomeValue” $branch=“master” $name=“username”+$branch $value=$($name)-->这里应该解析$name->username\u master,然后应该解析$username\u master->“SomeValue” 因此,echo$value应该输出“SomeValu
提前感谢正如您所提到的,我们可以在
bash
中说:
a="hello"
ref="a"
echo "${!ref}"
哪些产出:
hello
SomeValue
PowerShell
中的等效项为:
$a = "hello"
$ref = [ref]$a
echo $ref.Value
它还输出:
hello
我希望这就是你想要的
[编辑]
根据OP的示例,如何:
$username_master = "SomeValue"
$branch = "master"
$name = "username_" + $branch
Get-Variable -Name $name -valueOnly
哪些产出:
hello
SomeValue
您还可以通过以下方式为结果分配变量:
$value = Get-Variable -Name $name -valueOnly
echo $value
收益率:
SomeValue
希望这有帮助。正如您所提到的,我们可以在
bash
中说:
a="hello"
ref="a"
echo "${!ref}"
哪些产出:
hello
SomeValue
PowerShell
中的等效项为:
$a = "hello"
$ref = [ref]$a
echo $ref.Value
它还输出:
hello
我希望这就是你想要的
[编辑]
根据OP的示例,如何:
$username_master = "SomeValue"
$branch = "master"
$name = "username_" + $branch
Get-Variable -Name $name -valueOnly
哪些产出:
hello
SomeValue
您还可以通过以下方式为结果分配变量:
$value = Get-Variable -Name $name -valueOnly
echo $value
收益率:
SomeValue
希望这有帮助。据我所知,您正在谈论访问传递给函数的参数。如果是这种情况,请查看以下自动变量-
$PSBoundParameters
&$Args
。您可能还需要查看剩余参数中的值。参数属性。请。据我所知,您正在谈论访问传递给函数的参数。如果是这种情况,请查看以下自动变量-$PSBoundParameters
&$Args
。您可能还需要查看剩余参数中的值。参数属性。请。让我们以$username\u master=“SomeValue”$branch=“master”$name=“username\u”+$branch-->为例,在它解析为username\u master之后,它应该将$username\u master的值提取到$name echo$name应该输出“SomeValue”,您能建议一个解决方案吗??Thanks@vinuvizal谢谢你的回复。我更新了我的答案,为您的示例添加了一个解决方案。谢谢!测试它工作得非常好:)@vinuvizal感谢您的即时测试和反馈。很高兴知道它有效。BR.让我们以$username\u master=“SomeValue”$branch=“master”$name=“username\u”+$branch-->为例,在解析为username\u master后,应将$username\u master的值提取到$name echo$name应输出“SomeValue”您能建议一个解决方案吗??Thanks@vinuvizal谢谢你的回复。我更新了我的答案,为您的示例添加了一个解决方案。谢谢!测试它工作得非常好:)@vinuvizal感谢您的即时测试和反馈。很高兴知道它有效。比尔。