2015-02-23 62 views
2

我想制作一个非常简单的脚本,可以使用Invoke-Restmethod删除文件夹。它工作正常,如果我写的确切文件夹目的地,但如果我想添加的东西一样$ ENV计算机:它只是返回空url中的powershell invoke-restmethod环境变量

Invoke-RestMethod -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)} -Uri http://rm44:8081/conf.fapi-1.4.0/client/machine/$env:computername/ -Method DELETE 

这将返回http://rm44:8081/conf.fapi-1.4.0/client/machine//,而不是我的实际计算机名,我的理解是一个字符串,但它不被理解为一个。

+0

是否有所作为,如果您首先创建'Uri'并把它作为一个变量? – arco444 2015-02-23 11:55:33

回答

0

正如arco444所说,您应该在变量中定义URI并将其传递给Invoke-RestMethod。您正试图在只允许使用文字字符串的地方插入变量($ env:computername)。

此代码应为你工作:

$URI = "http://rm44:8081/conf.fapi-1.4.0/client/machine/$env:computername" 
Invoke-RestMethod -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)} -Uri $URI -Method DELETE 
+0

这是窍门,是欢呼 – cubus 2015-02-23 13:08:55