Я хочу выяснить способ использования командной строки, чтобы закрыть программу, скажем ... 60 секунд. Похоже на компьютер по времени выключения (shutdown /s /t) и таскилл.

Есть идеи? Это возможно?

2 ответа2

2

Как я могу закрыть программу, скажем ... 60 секунд?

Вы можете использовать ping или timeout чтобы произвести задержку.

  • timeout недоступен в Windows XP.
  • timeout дает вам обратный отсчет.

решение для ping

Чтобы убить notepad через 60 секунд, используйте следующую команду:

ping 127.0.0.1 -n 61 > nul && taskkill /im notepad.exe

Замечания:

  • Вам нужно 61 пинги как есть задержка 1s между ping с.

Пример:

F:\test>time /t && ping 127.0.0.1 -n 61 > nul && taskkill /im notepad.exe && time /t
17:56
SUCCESS: Sent termination signal to the process "notepad.exe" with PID 8084.
17:57

Задержка также может быть вызвана командой PING с адресом обратной связи, задержка в 1 секунду между каждым последовательным пингом. В тестах PING потребляет меньше процессорного времени, чем Sleep.exe или Timeout.exe, что позволяет другим процессам работать в фоновом режиме. Команда PING может быть прервана только с помощью Ctrl-C. Источник: Clay Calvert (usenet 2001.)

например, для задержки 40 секунд:

PING -n 41 127.0.0.1> nul

Тайм- аут источника


решение по timeout

Чтобы убить notepad через 60 секунд, используйте следующую команду:

 timeout /t 60 && taskkill /im notepad.exe

Заметки:

  • timeout недоступен в Windows XP.
  • timeout плохо реализован. Если вы выполните «тайм-аут 1», он будет ждать до "следующей секунды", которая может произойти через 0,1 секунды. Попробуйте выполнить «тайм-аут 1» несколько раз и посмотрите разницу в задержке. В течение 5 секунд или более, это не может быть большим делом, но с задержкой в 1 секунду это работает плохо.

Пример:

F:\test>time /t && timeout /t 60 && taskkill /im notepad.exe && time /t
18:07

Waiting for  0 seconds, press a key to continue ...
SUCCESS: Sent termination signal to the process "notepad.exe" with PID 5412.
18:08

Дальнейшее чтение

1

Попробуйте использовать планировщик задач.

  1. Настройте ведение журнала событий так, чтобы событие вызывалось при запуске нужной программы.
  2. Сконфигурируйте Запланированное задание для запуска, когда определенное событие из # 1 зарегистрировано. В запланированном задании может быть задана задержка (в вашем случае 60 секунд) и могут быть запущены любые команды / сценарии.

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