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命令行中对此进行测试时,一切正常。 作为脚本运行,我看到了上面的结果。 我做错了什么?

你可以通过使用字符串插值在PowerShell中更直接地执行此操作,例如:

$fullurl = "http://${SERVER_NAME}/v1/users?login=${USER_NAME}"

顺便说一句,您的 $SERVER_NAME 变量是否如示例输出所示实际设置为 "server user"? 是否可以在您的脚本中以某种方式为 $SERVER_NAME 分配服务器名称和用户名的值?

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

相关内容

最新更新