Powershell Windows 2003 Wildcard无法正常工作

时间:2012-06-16 04:24:22

标签: powershell windows-server-2003 wildcard

我在Windows 2003和Windows 2008中运行Powershell,两者都在运行2.0,但在Windows 2003中,似乎没有接受通配符(或者至少不会以相同的方式做出反应)。例如:

((get-counter -counter '\process(w3*)\id process').CounterSamples)

在Windows 2008中运行正常但在Windows 2003中失败。

((get-counter -counter '\process(w3wp)\id process').CounterSamples)

在Windows 2003中正常运行。

如何在Windows 2003中基于通配符进行过滤?

1 个答案:

答案 0 :(得分:2)

您好我有这样的问题,它似乎是由于Windows Server 2003和2008的工作方式之间的差异而不是它自己的功能,所以我做的是写一个代码块,检测到什么版本的Windows服务器我正在运行,然后更改我要执行的代码。您可以使用下面的代码或将其放在switch语句中。

$WindowsVesrion = Get-WmiObject win32_operatingSystem

IF ($WindowsVesrion.Version -gt 6.0)
    {
    ((get-counter -counter '\process(w3*)\id process').CounterSamples)
    }
ELSE {
     ((get-counter -counter '\process(w3wp)\id process').CounterSamples)
     }