При использованииPowershell Gwmi Win32_OperatingSystem подрезать выход
(GWMI -ComputerName $server -Class Win32_OperatingSystem -ErrorAction Stop).Caption
, чтобы получить подписи, как
Microsoft(R) Windows(R) Server 2003 Standard x64 Edition
Microsoft Windows Server 2008 R2 Standard
Microsoft Windows Server 2012 Datacenter
Что простой способ удалить "Microsoft Windows"
и "Microsoft(R) Windows"
из результатов?
я придумал:
(GWMI Win32_OperatingSystem -Comp $server).Caption -Replace "^Microsoft Windows "
который превращает "Microsoft Windows Server 2012 Datacenter"
в "Server 2012 Datacenter"
, но старые машины в 2003 и 2008 годах не соответствуют заменить регулярное выражение.
Теперь это выглядело слишком просто! Спасибо! -edit, я не могу опубликовать измененный код, который у меня есть, но вот один лайнер: '$ result.OS = (GWMI -ComputerName $ server -Class Win32_OperatingSystem -ErrorAction Stop) .Caption | % split | выберите -Skip 2 | & {"$ input"} ' – user4317867