cmd /q не работает, как ожидалось
Я хочу запустить командную строку, но не хочу выводить ее. Итак, я начинаю это как -
cmd /q dir
который работает нормально, но один cmd.exe не выходит. Если я использую это-
cmd /q /c dir
Я вижу вывод команды dir, которую не ожидаю увидеть
1 ответ
Решение
Параметр /Q не отключает вывод, он только отключает ECHO. Обычно это не нужно, но бывают случаи, когда это становится полезным.
Чтобы отключить все выходные данные без ошибок, просто перенаправьте стандартный вывод на nul (>nul
или же 1>nul
). Если вы также хотите отключить вывод ошибок, stderr также должен быть перенаправлен (2>nul
).
>nul 2>nul cmd /c dir
добавление
Андрей М хорошо прокомментировал свой вопрос. Вы, вероятно, можете выполнить свою команду напрямую, не проходя CMD. Перенаправление все равно будет работать так же.
>nul 2>nul yourCommand.exe