Respostas:
Se você estiver sentado em um prompt de comando e precisar montar uma ISO, execute o seguinte comando:
PowerShell Mount-DiskImage
Isso invocará um cmdlet do PowerShell. Você será solicitado a encontrar o caminho dos ISOs que deseja montar. Quando terminar, deixe o último em branco e empurre Enter.
Tada! Está montado:
Para desmontar um ISO do PowerShell, execute Dismount-DiskImage
e siga o prompt. Se você conhece apenas a letra da unidade na parte superior da cabeça e não o caminho da imagem, use este comando:
Get-Volume [Drive Letter] | Get-DiskImage | Dismount-DiskImage
Este comando irá pegar a unidade especificada, localizar a imagem do disco e desmontá-la.
Você também pode usar o -PassThru
sinalizador para armazenar dados passados para o comando. Vamos montar algumas ISOs, exibir suas letras de unidade, executar um arquivo em uma das unidades e depois desmontar todas as ISOs.
Monte os ISOs
$MountedISOs=Mount-DiskImage -PassThru D:\Downloads\Ubuntu.iso,D:\Downloads\Windows8.iso,D:\Downloads\Server2012.iso
Exibir informações de volume para cada ISO montado usando um foreach
loop
foreach($iso in $MountedISOs){Get-Volume -DiskImage $iso}
Unidade da lista J
ls J:\
Abra um arquivo
start wubi.exe
Para desmontar os ISOs, use o seguinte comando:
Dismount-DiskImage $MountedISOs.ImagePath
Para criar um script simples que verifique se o ISO está anexado e é de fato um ISO (vs. um VHD) que eu gosto de usar -PassThru
para armazenar temporariamente o objeto e use o Get-DiskImage
comando para atualizar o status do objeto DiskImage. Isso atualizará a Attached
propriedade. A StorageType
propriedade informará se o arquivo é um ISO ou VHD de acordo com sua extensão.
O StorageType
de um VHD é 2, onde um ISO retornará 1. Aqui está a saída de $UbuntuISO
:
Esta é a saída de $temp
depois de montar um VHD: ( Mount-DiskImage
também pode montar VHDs!)
Observe que a Attached
propriedade acima é False
, apesar do Mount-DiskImage
comando ser executado sem problemas.
Lembre-se de que a $UbuntuISO
variável também não será atualizada:
C:\>explorer.exe imagepath
, aqui não precisamos do PS, mas para desmontar, precisamos do PS.
Normalmente, se você quiser fazer isso pela linha de comando, precisará de um método não interativo. Você desejará usar a -ImagePath
opção para fazer isso.
Assim, o comando é:
PowerShell Mount-DiskImage -ImagePath \"C:\AbsolutePathTo\Image.iso\"
Lembre-se de que, se você citar o caminho absoluto (para conter espaços e outros caracteres especiais), precisará escapar das aspas.
Para desmontar uma imagem iso, lembre-se de citá-la:
PowerShell "Get-Volume G | Get-DiskImage | Dismount-DiskImage"
Observe que não tivemos que citar o comando no primeiro caso, mas o fazemos no segundo, porque o |
canal fará com que a linha de comando pense que está no contexto da linha de comando, em vez de adicionar argumentos aos PowerShell
quais o PowerShell automaticamente concatena em um único comando).
Também não se esqueça de escrever Dismount-DiskImage
corretamente (não k
em Desmontar).
PowerShell Dismount-DiskImage \"C:\AbsolutePathTo\Image.iso\"
PowerShell Mount-DiskImage \"%CD%\Image.iso\"