1

Я использую планировщик задач. Я запускаю много консольного программного обеспечения при запуске. Программное обеспечение консоли прекрасно работает в фоновом режиме. Иногда я хочу увидеть "КОНСОЛЬ" этих программ.

Есть ли способ увидеть консоль / окно фонового процесса?

3 ответа3

3

Если вы запускаете задачу под указанной учетной записью, опция «Запускать, когда пользователь вошел в систему или нет», задача вообще не сможет взаимодействовать с рабочим столом.

Опция "Запускать только когда пользователь вошел в систему" делает свое дело, но всегда показывает консоль.

Мое личное решение - запускать консольные скрипты в ConEmu, он может запустить область состояния панели задач и может быть легко обнаружен из. Пример ниже запускает скрипт в ConEmu в определенной директории, ждет завершения скрипта и закрывает окно.

Program:
  c:\tools\ConEmu\ConEmu64.exe
Add arguments:
  -basic -StartTSA -dir c:\Sources -cmd cmd.exe /c c:\Sources\Maintain.cmd -cur_console:n

Некоторые комментарии

  • -basic заставляет некоторые настройки ConEmu по умолчанию без взаимодействия с пользователем при первом запуске.
  • Часть после -cmd является самой командой: cmd.exe /c c:\Sources\Maintain.cmd .
  • -cur_console:n разрешает автоматическое закрытие окна, если скрипт завершается быстро. Должно быть последний выключатель.
2

Решение:

Я решил написать небольшое программное обеспечение с открытым исходным кодом для этого.

Программное обеспечение, позволяющее подключаться к любой другой консольной программе и управлять ею (см. Консоль и отправлять команды)

Как это работает?

В диспетчере задач вы запускаете с помощью пульта дистанционного управления

remote-console --server [port] cmd.exe

Затем, чтобы увидеть консоль, вам необходимо подключиться к ней:

remote-console --client [ip] [port]

Вам просто нужно установить его oce, используя npm

npm i -g node-remote-console

тянуть запросы приветствуются :)

https://github.com/AminaG/node-remote-console

0

Вы не можете видеть консоль некоторых задач, потому что они запрограммированы таким образом, что они не используют никаких выражений печати в коде, так что на самом деле вы можете получить только экран консоли balnk. Так что нет смысла видеть пробел консоль задания.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .