Làm cách nào tôi có thể gắn và gỡ bỏ hình ảnh ISO khỏi PowerShell trong Windows 8 mà không cần chương trình của bên thứ 3?
Bản sửa đổi ban đầu của câu hỏi này khiến tôi băn khoăn liệu có thể gắn ISO qua PowerShell trong Windows 8 không.
Làm cách nào tôi có thể gắn và gỡ bỏ hình ảnh ISO khỏi PowerShell trong Windows 8 mà không cần chương trình của bên thứ 3?
Bản sửa đổi ban đầu của câu hỏi này khiến tôi băn khoăn liệu có thể gắn ISO qua PowerShell trong Windows 8 không.
Câu trả lời:
Nếu bạn đang ngồi tại một dấu nhắc lệnh và cần gắn ISO, hãy chạy lệnh sau:
PowerShell Mount-DiskImage
Điều này sẽ gọi một lệnh ghép ngắn PowerShell. Bạn sẽ được nhắc về đường dẫn của ISO bạn muốn gắn kết. Khi bạn đã hoàn tất, để trống cái cuối cùng và đẩy Enter.
Tada! Nó được gắn kết:
Để loại bỏ ISO khỏi PowerShell chạy Dismount-DiskImage
và làm theo lời nhắc. Nếu bạn chỉ biết ký tự ổ đĩa ở trên đỉnh đầu chứ không phải đường dẫn hình ảnh, hãy sử dụng lệnh này:
Get-Volume [Drive Letter] | Get-DiskImage | Dismount-DiskImage
Lệnh này sẽ lấy ổ đĩa bạn chỉ định, tìm hình ảnh đĩa và tháo gỡ nó.
Bạn cũng có thể sử dụng -PassThru
cờ để lưu trữ dữ liệu được truyền vào lệnh. Chúng ta hãy gắn một vài ISO, hiển thị ký tự ổ đĩa của chúng, thực thi một tệp trên một trong các ổ đĩa và sau đó loại bỏ tất cả các ISO.
Gắn kết các ISO
$MountedISOs=Mount-DiskImage -PassThru D:\Downloads\Ubuntu.iso,D:\Downloads\Windows8.iso,D:\Downloads\Server2012.iso
Hiển thị thông tin âm lượng cho mỗi ISO được gắn bằng foreach
vòng lặp
foreach($iso in $MountedISOs){Get-Volume -DiskImage $iso}
Danh sách ổ đĩa J
ls J:\
Mở tệp tin
start wubi.exe
Để loại bỏ các ISO, sử dụng lệnh sau:
Dismount-DiskImage $MountedISOs.ImagePath
Để xây dựng một tập lệnh đơn giản kiểm tra xem ISO có được đính kèm hay không và trên thực tế là ISO (so với VHD) tôi muốn sử dụng -PassThru
để lưu trữ đối tượng tạm thời và sử dụng Get-DiskImage
lệnh để cập nhật trạng thái của đối tượng DiskImage. Điều này sẽ cập nhật Attached
tài sản. Các StorageType
bất động sản sẽ cho bạn biết liệu tập tin là một tiêu chuẩn ISO hoặc VHD theo phần mở rộng tệp.
Giá StorageType
trị của VHD là 2, trong đó ISO sẽ trả về 1. Đây là đầu ra của $UbuntuISO
:
Đây là đầu ra của $temp
sau khi gắn VHD: ( Mount-DiskImage
cũng có thể gắn VHD!)
Lưu ý rằng thuộc Attached
tính ở trên là False
, mặc dù Mount-DiskImage
lệnh chạy mà không gặp trở ngại.
Hãy nhớ rằng $UbuntuISO
biến sẽ không được cập nhật:
C:\>explorer.exe imagepath
, ở đây chúng ta không cần PS nhưng để vượt qua chúng ta cần có PS.
Thông thường, nếu bạn muốn làm điều này thông qua dòng lệnh, bạn cần một phương thức không tương tác. Bạn sẽ muốn sử dụng công -ImagePath
tắc để làm điều này.
Vì vậy, lệnh là:
PowerShell Mount-DiskImage -ImagePath \"C:\AbsolutePathTo\Image.iso\"
Hãy nhớ rằng nếu bạn trích dẫn đường dẫn tuyệt đối (để chứa khoảng trắng và các ký tự đặc biệt khác), bạn cần thoát khỏi dấu ngoặc kép.
Để loại bỏ một hình ảnh iso, hãy nhớ trích dẫn nó:
PowerShell "Get-Volume G | Get-DiskImage | Dismount-DiskImage"
Lưu ý rằng chúng tôi không phải trích dẫn lệnh trong trường hợp đầu tiên, nhưng chúng tôi thực hiện trong lần thứ hai, vì |
đường ống sẽ khiến dòng lệnh nghĩ rằng nó nằm trong ngữ cảnh dòng lệnh, thay vì thêm các đối số PowerShell
(mà PowerShell tự động nối vào một lệnh duy nhất).
Cũng đảm bảo đánh vần Dismount-DiskImage
chính xác (không có k
trong Dismount).
PowerShell Dismount-DiskImage \"C:\AbsolutePathTo\Image.iso\"
PowerShell Mount-DiskImage \"%CD%\Image.iso\"