как запустить командную строку в фоновом режиме, используя файл .bat (не используя файл .vbs) - PullRequest
0 голосов
/ 17 января 2019

Я хочу запустить файл .bat, который запускает другой файл .bat в новом cmd, но я хочу скрыть недавно открытый cmd или запустить его в фоновом режиме. Я не хочу использовать метод .vbs. Возможен ли другой путь?

1 Ответ

0 голосов
/ 17 января 2019

Существует только два метода, чтобы имитировать его, в основном вы запускаете файл, не создавая новую оболочку, однако, скрывая все команды, убедитесь, что он не показывает ни одного, также используйте cls, так как это будет убедитесь, что он не показывает вам, что запускает, но он не защищен от ошибок:

batch1.cmd

start "" /b batch2.cmd
cls

batch2.cmd

@echo off
echo Hello World>nul
ping localhost>nul
(echo hello world>Mytest.txt)>nul

Строка (echo hello world>Mytest.txt)>nul предназначена для имитации того, как вы можете передавать информацию в файл, но по-прежнему направлять вывод экрана на nul, чтобы он не отображался на экране.

Или вы можете запустить вторую партию в минимизированном режиме, но она может быть развернута или восстановлена ​​пользователем:

batch1.cmd

start "" /min batch2.cmd

batch2.cmd

@echo off
echo Hello World>nul
ping localhost>nul
(echo hello world>Mytest.txt)>nul

, но не уверен, почему вы не хотите использовать метод vbs, поскольку это, безусловно, лучший и самый простой метод.

Set MyScript    = CreateObject("WScript.Shell")
MyScript.Run "f:\login.bat", 0, False
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...