Мне нужна команда, которую я могу поместить в конец командного файла и которая позволит мне безопасно удалить USB-устройство, на котором хранится командный файл.
Я нашел команду powershell, которая может этого добиться, но когда я пытаюсь запустить ее из cmd, она не работает («% ~ d0» - это переменная для пути USB):
powershell -command "$driveEject = New-Object -comObject Shell.Application ; $driveEject.Namespace(17).ParseName("%~d0").InvokeVerb("Eject")"
Вот сообщение об ошибке, которое я получаю:
At line:1 char:93
+ ... ject Shell.Application ; $driveEject.Namespace(17).ParseName(E:).Invo ...
+ ~
Missing ')' in method call.
At line:1 char:93
+ ... ct Shell.Application ; $driveEject.Namespace(17).ParseName(E:).Invoke ...
+ ~~
Unexpected token 'E:' in expression or statement.
At line:1 char:95
+ ... t Shell.Application ; $driveEject.Namespace(17).ParseName(E:).InvokeV ...
+ ~
Unexpected token ')' in expression or statement.
+ CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : MissingEndParenthesisInMethodCall