Wie lese ich programmgesteuert Dateien aus einem ISO- oder Disk-Image in Powershell?

Wie lese ich programmgesteuert Dateien aus einem ISO- oder Disk-Image in Powershell?

Ich möchte im Rahmen eines Powershell-Skripts Dateien von einem ISO-Disk-Image lesen. Da dies ein automatisierter Prozess ist und die Festplatte nur vorübergehend geöffnet wird, möchte ich die Zuweisung unnötiger Ressourcen wie eines Laufwerksbuchstabens möglichst vermeiden.

Antwort1

Hier ist eine einfache Möglichkeit, von einem ISO zu lesen, ohne Laufwerksbuchstaben zuzuweisen (* siehe unten).

$DiskImage = Mount-DiskImage -ImagePath $ISOPath -StorageType ISO -NoDriveLetter -PassThru
New-PSDrive -Name ISOFile -PSProvider FileSystem -Root (Get-Volume -DiskImage $DiskImage).UniqueId
Push-Location ISOFile:
# read files with the usual filesystem commands
Pop-Location
Remove-PSDrive ISOFile
Dismount-DiskImage -DevicePath $DiskImage.DevicePath

*Das erstellte Laufwerk New-PSDriveist kein echtes Windows-Laufwerk und wird außerhalb von PowerShell oder sogar außerhalb der New-PSDriveausgeführten PowerShell-Funktion nicht angezeigt. Der Remove-PSDriveAufruf ist möglicherweise nicht einmal erforderlich, wenn Sie das Obige nicht mehrmals in einem Bereich verwenden.

verwandte Informationen