Powershell参考变量值

Powershell参考变量值,powershell,for-loop,reference,Powershell,For Loop,Reference,我尝试在变量中创建一个文本,每次调用该文本时,它都会接受变量“$name\u person”中的当前值 在第一轮中,你应该给出: Hi Victor Hi Juan Hi Pedro Hi Luis 我正在使用[ref]进行测试,但无论如何都不需要 有没有办法不用函数或不用“替换标签”来完成 多谢各位 $name_person = 'victor' $message = "hi " + $name_person + ':' $names = @('Juan', 'Pedro', 'Lui

我尝试在变量中创建一个文本,每次调用该文本时,它都会接受变量“$name\u person”中的当前值

在第一轮中,你应该给出:

Hi Victor
Hi Juan
Hi Pedro
Hi Luis
我正在使用[ref]进行测试,但无论如何都不需要

有没有办法不用函数或不用“替换标签”来完成

多谢各位

$name_person = 'victor'

$message = "hi " + $name_person + ':'


$names = @('Juan', 'Pedro', 'Luis')


foreach ($name in $names){

    $name_person = $name
    $message 

}
答复:

hi victor:
hi victor:
hi victor:

您可以将
ScriptBlock
值分配给
$message
并在循环中调用它:

$message={“hi$name\u person”}
$names=@('Juan','Pedro','Luis')
foreach($name中的名称){
$name\u person=$name
&$message
}

无需创建ScriptBlock,只需使用变量替换即可

$names = @('Juan', 'Pedro', 'Luis')
foreach ($name in $names) {"hi $name"}