從命令列刪除 USB 設備

從命令列刪除 USB 設備

我正在為 Windows 7 建立備份腳本,我希望它執行的最後一個操作是安全地「刪除」它要備份到的 USB 驅動器。我的印像是將驅動器插入相同的USB連接埠始終保持相同的DEV_ID(如果我錯了,請糾正我)。使用命令列(或 PowerShell),如何告訴 Windows 在無需使用者輸入的情況下自動安全刪除硬體?

就像佔位符一樣,其他可能有辦法做到這一點的作業系統也很高興知道。

答案1

刪除驅動器過去對我很有幫助

答案2

除了烏韋·西伯的刪除驅動器在另一個答案中提到,有許多實用程式可以完成此任務。一個小清單如下:

  • USB 磁碟彈出器主要是基於 GUI 的實用程序,但也可以在命令列中使用,以彈出運行程序的驅動器,或通過指定驅動器號/(部分)驅動器名稱/安裝點等來彈出任何驅動器。

    USB 磁碟彈出器

  • USB 安全移除不是免費的,但它是一個強大的磁碟刪除實用程序,有很多進階功能,當然包括命令列支援曾蒂莫是它的大哥,與甚至 更多的 特徵

    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 復原控制台/系統恢復命令提示符,因此上述任何實用程式都不太可能有幫助。在這種情況下,使用以下方法磁碟部分應該管用:

  1. 鍵入diskpart並等待 diskpart 提示字元 ( DISKPART>)

  2. 類型list volume

  3. 仔細記下 USB 隨身碟的捲號(使用列出的屬性,如磁碟機號、標籤、類型和大小來取得協助)

  4. 輸入select volume <number>,其中<number>是上面提到的捲號

    磁碟部分

  5. 類型remove all dismount

  6. 鍵入exit退出 Diskpart

現在您應該能夠安全地移除 USB 驅動器,而不必擔心資料遺失。

答案3

回答問題...您不需要第三方的東西。

使用命令列(或 PowerShell),如何告訴 Windows 在無需使用者輸入的情況下自動安全刪除硬體?

執行此命令: RunDll32.exe shell32.dll,Control_RunDLL hotplug.dll 彈出「安全移除硬體」對話框:

安全刪除硬體對話框

答案4

找不到內部命令(感謝 MS),沒有一個腳本可以工作,刪除字母是一種糟糕的彈出方式,互動方式也不酷,並且討厭使用第三方工具。就我而言,使用我已經使用了 20 年的東西:內部Microsoft Windows 系統內部幫助案例:

sync -e x:
  • 刷新 USB 隨身碟
  • 彈出 USB 隨身碟
  • 保留信件
  • 不會扭曲 USB 樹

如果有鎖,請使用 Sysinternals處理或者過程表達式找出答案。

相關內容