
我正在為 Windows 7 建立備份腳本,我希望它執行的最後一個操作是安全地「刪除」它要備份到的 USB 驅動器。我的印像是將驅動器插入相同的USB連接埠始終保持相同的DEV_ID(如果我錯了,請糾正我)。使用命令列(或 PowerShell),如何告訴 Windows 在無需使用者輸入的情況下自動安全刪除硬體?
就像佔位符一樣,其他可能有辦法做到這一點的作業系統也很高興知道。
答案1
刪除驅動器過去對我很有幫助
答案2
除了烏韋·西伯的刪除驅動器在另一個答案中提到,有許多實用程式可以完成此任務。一個小清單如下:
USB 磁碟彈出器主要是基於 GUI 的實用程序,但也可以在命令列中使用,以彈出運行程序的驅動器,或通過指定驅動器號/(部分)驅動器名稱/安裝點等來彈出任何驅動器。
USB 安全移除不是免費的,但它是一個強大的磁碟刪除實用程序,有很多進階功能,當然包括命令列支援。曾蒂莫是它的大哥,與甚至 更多的 特徵。
微軟自己的開發者大會是裝置管理員的命令列版本。除了 KB 頁面中提供的原始 Win2K/XP 時代版本之外,還可以從各種 MS 來源獲得較新的版本(32 位元和 64 位元),如此處所述在哪裡可以找到 DevCon.exe文章。適用於 Windows 7(也可能是 Windows 8)的 DevCon.exe 可以被發現埋藏在對應的目錄中。Windows 驅動程式工具包 (WDK),如中提到的這個線程(其中還包含下載鏈接提取的可執行檔)。
devcon status *
或devcon hwids *
或devcon findall =usb
(對於更緊湊的清單)應該告訴您設備的硬體 ID。例如:USB\VID_0781&PID_7113\0001162825
名稱:USB 海量儲存裝置
驅動程式正在運作。然後,您可以嘗試使用以下命令刪除裝置
devcon remove "USB\VID_0781&PID_7113"
(允許使用 * 等通配符,但請小心,否則您可能最終會完全刪除其他裝置!)
有人問“是否有 DOS 提示字元(Win7 中的 cmd.exe)命令可以彈出拇指驅動器?「不幸的是,它作為該線程的重複項而關閉。但是,問題是關於在Windows 復原控制台/系統恢復命令提示符,因此上述任何實用程式都不太可能有幫助。在這種情況下,使用以下方法磁碟部分應該管用:
鍵入
diskpart
並等待 diskpart 提示字元 (DISKPART>
)類型
list volume
仔細記下 USB 隨身碟的捲號(使用列出的屬性,如磁碟機號、標籤、類型和大小來取得協助)
輸入
select volume <number>
,其中<number>
是上面提到的捲號類型
remove all dismount
鍵入
exit
退出 Diskpart
現在您應該能夠安全地移除 USB 驅動器,而不必擔心資料遺失。
答案3
答案4
找不到內部命令(感謝 MS),沒有一個腳本可以工作,刪除字母是一種糟糕的彈出方式,互動方式也不酷,並且討厭使用第三方工具。就我而言,使用我已經使用了 20 年的東西:內部Microsoft Windows 系統內部幫助案例:
sync -e x:
- 刷新 USB 隨身碟
- 彈出 USB 隨身碟
- 保留信件
- 不會扭曲 USB 樹
如果有鎖,請使用 Sysinternals處理或者過程表達式找出答案。