Risposte:
Se ti trovi al prompt dei comandi e devi montare un ISO, esegui il comando seguente:
PowerShell Mount-DiskImage
Ciò invocherà un cmdlet di PowerShell. Ti verrà richiesto il percorso degli ISO che desideri montare. Quando hai finito, lascia l'ultimo vuoto e premi Enter.
Tada! È montato:
Per smontare un ISO dall'esecuzione di PowerShell Dismount-DiskImage
e seguire il prompt. Se conosci solo la lettera di unità nella parte superiore della testa e non il percorso dell'immagine, utilizza questo comando:
Get-Volume [Drive Letter] | Get-DiskImage | Dismount-DiskImage
Questo comando prenderà l'unità specificata, troverà l'immagine del disco e la smonterà.
È inoltre possibile utilizzare il -PassThru
flag per memorizzare i dati passati al comando. Montiamo alcuni ISO, visualizziamo le loro lettere di unità, eseguiamo un file su una delle unità e quindi smontiamo tutte le ISO.
Montare gli ISO
$MountedISOs=Mount-DiskImage -PassThru D:\Downloads\Ubuntu.iso,D:\Downloads\Windows8.iso,D:\Downloads\Server2012.iso
Visualizza le informazioni sul volume per ogni ISO montato usando un foreach
loop
foreach($iso in $MountedISOs){Get-Volume -DiskImage $iso}
Elenco J drive
ls J:\
Apri un file
start wubi.exe
Per smontare gli ISO, utilizzare il seguente comando:
Dismount-DiskImage $MountedISOs.ImagePath
Per creare uno script semplice che controlli se l'ISO è collegato e in realtà è un ISO (rispetto a un disco rigido virtuale) che mi piace utilizzare -PassThru
per archiviare temporaneamente l'oggetto e utilizzare il Get-DiskImage
comando per aggiornare lo stato dell'oggetto DiskImage. Questo aggiornerà la Attached
proprietà. La StorageType
proprietà ti dirà se il file è ISO o VHD in base alla sua estensione.
Il valore StorageType
di un disco rigido virtuale è 2, dove un ISO restituirà 1. Ecco l'output di $UbuntuISO
:
Questo è l'output di $temp
dopo aver montato un VHD: ( Mount-DiskImage
può anche montare VHD!)
Si noti che la Attached
proprietà sopra è False
, nonostante il Mount-DiskImage
comando venga eseguito senza intoppi.
Tieni presente che la $UbuntuISO
variabile non rimarrà aggiornata neanche:
C:\>explorer.exe imagepath
, qui non abbiamo bisogno di PS ma per smontare lì abbiamo bisogno di PS.
Normalmente, se si desidera farlo tramite la riga di comando, è necessario un metodo non interattivo. Ti consigliamo di utilizzare l' -ImagePath
interruttore per farlo.
Pertanto, il comando è:
PowerShell Mount-DiskImage -ImagePath \"C:\AbsolutePathTo\Image.iso\"
Ricorda che se citi il percorso assoluto (per contenere spazi e altri caratteri speciali), devi evitare le virgolette.
Per smontare un'immagine iso, ricordati di citarla:
PowerShell "Get-Volume G | Get-DiskImage | Dismount-DiskImage"
Si noti che non è stato necessario citare il comando nel primo caso, ma nel secondo caso, poiché la |
pipe farà sì che la riga di comando pensi che si trovi nel contesto della riga di comando, anziché argomenti di aggiunta PowerShell
(a cui PowerShell automaticamente si concatena in un singolo comando).
Assicurati anche di scrivere Dismount-DiskImage
correttamente (no k
in Dismount).
PowerShell Dismount-DiskImage \"C:\AbsolutePathTo\Image.iso\"
PowerShell Mount-DiskImage \"%CD%\Image.iso\"