尝试使用 cmd 单行命令安全弹出可移动 USB 驱动器

尝试使用 cmd 单行命令安全弹出可移动 USB 驱动器

我找到了一个可以在 cmd 窗口中使用时弹出 USB 驱动器的单行命令:

powershell -command "(New-Object -comObject Shell.Application).NameSpace(17).ParseName('F:').InvokeVerb('Eject')"

不幸的是,这在我的计算机上不起作用。它只会输出一个空行。不知怎的,我发现如果我在代码中添加“-noexit”开关,它就可以完美运行。

powershell -noexit -command "(New-Object -comObject Shell.Application).NameSpace(17).ParseName('F:').InvokeVerb('Eject')"

但是我希望它能够无缝执行。有什么方法可以解决这个问题吗?

答案1

基于 这个答案,以下表述可能会更好:

powershell.exe -Command $obj = (New-Object -comObject Shell.Application).namespace(17).ParseName('F:\');$Type = $obj.Type;while ($Type-eq 'USB Drive'){Write-Host 'Removing drive';$obj.InvokeVerb('Eject');$Type= $obj.Type}

相关内容