Powershell参数化字符串未看到第二个参数占位符

时间:2013-10-01 00:00:38

标签: powershell

我在Powershell 2函数中定义了一个URL字符串,然后将其写出来:

$fullurl = [string]::Format("http://{0}/v1/users?login={1}",$SERVER_NAME,$USER_NAME)

write-host $fullurl

...但是,最终结果似乎忽略了第二个参数的占位符。相反,我得到的读数为http://server user/v1/users/?login=

当我在powershell命令行中测试它时,事情很有效。作为脚本运行我看到上面的结果。我做错了什么?

1 个答案:

答案 0 :(得分:3)

您可以使用字符串插值(例如:

)在PowerShell中直接执行此操作
$fullurl = "http://${SERVER_NAME}/v1/users?login=${USER_NAME}"

BTW是您的$ SERVER_NAME变量实际设置为"server user",因为您的示例输出显示了?您的脚本中是否可以以某种方式为$ SERVER_NAME分配服务器名称和用户名的值?

如果上述内容未生成预期的url,则检查两个变量的值。