2017-12-06 3 views
0

Können Sie mir in die richtige Richtung zeigen, wie diese DISM-Ausgabe in Powershell-Objekte konvertiert wird, damit ich sie in meinem Skript verwenden kann, um die Ergebnisse zu filtern? dism /Get-WimInfo /WimFile:"E:\_Source\OSD\x64\Windows 10 Enterprise\1607\Media\WIM\REFW10-X64-1607_04-12-2017.wim" /index:1DISM-Ausgabe in PS-Objekte konvertieren

Die out-put i bekommen ist:

Deployment Image Servicing and Management tool Version: 10.0.14393.0 

Details for image : E:\_Source\OSD\x64\Windows 10 Enterprise\1607\Media\WIM\REFW10-X64-1607_04-12-2017.wim 

Index : 1 Name : REFW10-X64EN-01EDrive 
Description : Build Windows 10 Enterprise x64 en-US 

Size : 18.500.052.305 bytes 

WIM Bootable : No 

Architecture : x64 

Hal : acpiapic 

Version : 10.0.16299 

ServicePack Build : 15 

ServicePack Level : 64 

Edition : Enterprise 

Installation : Client 

ProductType : WinNT 

ProductSuite : Terminal Server 

System Root : WINDOWS 

Directories : 24025 

Files : 112737 

Created : 24-11-2017 - 01:40:49 

Modified : 24-11-2017 - 01:40:51 

Languages :  en-US (Default) 

i mit | Out-String -Stream | Select-String "Version " Aber ohne Glück versucht ..

+0

ich glaube, Sie verwenden sollten, das zugehörige Cmdlet [Get-WindowsImage] (https://docs.microsoft.com/powershell/module/dism/get-windowsimage?view=win10-ps). – iRon

+0

bereits versucht, dass, es ist nicht so detailliert wie DISM get-wiminfo, ich möchte die Build-Nummer und Sprachen verwenden – user7490700

+0

'dism/Get-WimInfo/WimFile:" C: \ ... "/ index: 1 | Select-String "Version" 'funktioniert für mich ... – iRon

Antwort

0

Putting es zusammen:

$WimFile = "E:\_Source\OSD\x64\Windows 10 Enterprise\1607\Media\WIM\REFW10-X64-1607_04-12-2017.wim" 
$Version = (dism /Get-WimInfo /WimFile:$WimFile /index:1 | Select-String "Version ").ToString().Split(":")[1].Trim() 
$Language = ((dism /Get-WimInfo /WimFile:$WimFile /index:1 | Select-String "Languages " -Context 0,1).ToString() -Split "\s\(Default\)" -Split "\s")[-2]