2
当检索一台计算机的操作系统,我得到了不同的结果,这取决于我是否如果使用的语句或开关:powerwshell IF VS交换机
if (((Get-WmiObject -ComputerName DT-04 Win32_OperatingSystem).Caption.ToString()) -match "Microsoft Windows 7 Professional") { "Found" } Else { "Not found" }
结果=找到
switch ((Get-WmiObject -ComputerName DT-04 Win32_OperatingSystem).Caption.ToString()) { "Microsoft Windows 7 Professional" { "Found" } Default { "Not Found" } }
结果=未找到
这是为什么?
谢谢。它确实看起来好像在返回的字符串后面有一个空格,我发现它是: '“'+(Get-WmiObject -ComputerName DT-04 Win32_OperatingSystem).Caption.trim()+'''' 感谢您的帮助! – cswalker
正确和非常好的解释答案应该通过检查它而得到尊重。 – LotPings