Как программно прочитать файлы из ISO-образа или образа диска в PowerShell?

Как программно прочитать файлы из ISO-образа или образа диска в PowerShell?

Я хотел бы прочитать файлы с образа диска ISO как часть скрипта powershell. Поскольку это автоматизированный процесс, а диск будет открыт только временно, я хотел бы избежать выделения ненужных ресурсов, таких как буква диска, если это возможно.

решение1

Вот простой способ чтения с ISO-образа без назначения букв дискам (* см. ниже).

$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

*Созданное устройство New-PSDriveне является настоящим устройством Windows и не будет видно за пределами PowerShell или даже за пределами функции Powershell, в которой New-PSDriveоно было запущено. Remove-PSDriveВызов может даже не потребоваться, если вы не используете указанное выше несколько раз в одной области.

Связанный контент