PowerShell:如何将动态变量传递给Get-Counter

时间:2018-07-12 08:11:24

标签: c# .net powershell process

我试图通过PowerShell var deletes = document.querySelectorAll('.delete') deletes.forEach(function(removeTodo) { ul = document.querySelector('ul'); removeTodo.addEventListener("click", function() { console.log(removeTodo.parentNode.parentNode); const li = removeTodo.parentNode; ul.removeChild(li); }); }); 中的变量动态添加computerName和processName,但是它引发了错误。由于我是PowerShell的新手,因此我不知道如何进行连接。您能帮我解决问题吗?

下面是我想做的代码

Get-Counter

$compName = 'mycomputer' $processName = 'code' $url2='"\\'+$compName+'\process('+$processName+'#1)\id process" -ErrorAction SilentlyContinue' Get-Counter $url2 的输出必须类似于:

$url2->这是我要通过动态网址执行的内容

错误:

Get-Counter '\\mycomputer\process(code#4)\id process' -ErrorAction SilentlyContinue

1 个答案:

答案 0 :(得分:3)

当您将单个字符串作为位置参数传递时,PowerShell会将其解释为-一个单个参数。

除此之外,您的“动态”参数因为使用单引号而不起作用,所以$compName$processName变量将不会扩展!

可以:

$url2 = "\\$compName\process($processName#1)\id process"
Get-Counter $url2 -ErrorAction SilentlyContinue

或使用喷溅:

$GetCounterParams = @{
    Counter = "\\$compName\process($processName#1)\id process"
    ErrorAction = 'SilentlyContinue'
}
Get-Counter @GetCounterParams
相关问题