.png)
решение1
Смонтировать ISO из командной строки (только Windows 8/2012 и выше)
Если вы работаете в командной строке и вам необходимо смонтировать ISO-образ, выполните следующую команду:
PowerShell Mount-DiskImage
Это вызовет командлет PowerShell. Вам будет предложено указать путь к ISO-образам, которые вы хотите смонтировать. Когда закончите, оставьте последнее поле пустым и нажмите Enter.
Тада! Он установлен:
Размонтировать ISO
Чтобы размонтировать ISO из PowerShell, запустите Dismount-DiskImage
и следуйте подсказкам. Если вы знаете только букву диска, а не путь к образу, используйте эту команду:
Get-Volume [Drive Letter] | Get-DiskImage | Dismount-DiskImage
Эта команда захватит указанный вами диск, найдет образ диска и отмонтирует его.
Монтирование нескольких ISO-образов и отображение букв дисков
Вы также можете использовать -PassThru
флаг для хранения данных, переданных команде. Давайте смонтируем несколько ISO, отобразим их буквы дисков, выполним файл на одном из дисков, а затем размонтируем все ISO.
Монтировать ISO-образы
$MountedISOs=Mount-DiskImage -PassThru D:\Downloads\Ubuntu.iso,D:\Downloads\Windows8.iso,D:\Downloads\Server2012.iso
Отображение информации об объеме для каждого ISO-образа, смонтированного с помощью foreach
цикла
foreach($iso in $MountedISOs){Get-Volume -DiskImage $iso}
Список J привода
ls J:\
Открыть файл
start wubi.exe
Чтобы размонтировать ISO-образы, используйте следующую команду:
Dismount-DiskImage $MountedISOs.ImagePath
Тестирование ISO
Чтобы создать простой скрипт, который проверяет, присоединен ли ISO и является ли он на самом деле ISO (а не VHD), я предпочитаю использовать его -PassThru
для временного хранения объекта и использовать Get-DiskImage
команду для обновления статуса объекта DiskImage. Это обновит свойство Attached
. StorageType
Свойство сообщит вам, является ли файл ISO или VHD в соответствии с его расширением файла.
Для StorageType
VHD это 2, тогда как для ISO это будет 1. Вот вывод $UbuntuISO
:
Это вывод $temp
после монтирования VHD: ( Mount-DiskImage
можно также монтировать VHD!)
Обратите внимание, что Attached
указанное выше свойство равно False
, несмотря на то, что Mount-DiskImage
команда выполняется без сбоев.
Имейте в виду, что $UbuntuISO
переменная также не будет обновляться:
решение2
Обычно, если вы хотите сделать это через командную строку, вам нужен неинтерактивный метод. -ImagePath
Для этого вам понадобится переключатель.
Таким образом, правильная команда:
PowerShell Mount-DiskImage -ImagePath "C:\AbsolutePathTo\Image.iso"
Помните, что если вы заключаете в кавычки абсолютный путь (содержащий пробелы и другие специальные символы), вам необходимо экранировать кавычки.
Чтобы размонтировать образ ISO, не забудьте заключить его в кавычки:
PowerShell "Get-Volume G | Get-DiskImage | Dismount-DiskImage"
Обратите внимание, что в первом случае нам не пришлось заключать команду в кавычки, но во втором случае мы это делаем, поскольку конвейер |
заставит командную строку думать, что она находится в контексте командной строки, а не в дополнительных аргументах PowerShell
(которые PowerShell автоматически объединяет в одну команду).
Также убедитесь, что пишете Dismount-DiskImage
правильно (нет k
в Dismount).