
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-PSDrive
ist kein echtes Windows-Laufwerk und wird außerhalb von PowerShell oder sogar außerhalb der New-PSDrive
ausgeführten PowerShell-Funktion nicht angezeigt. Der Remove-PSDrive
Aufruf ist möglicherweise nicht einmal erforderlich, wenn Sie das Obige nicht mehrmals in einem Bereich verwenden.