
명령 프롬프트를 사용하여 60초 안에 프로그램을 닫는 방법을 알고 싶습니다. 컴퓨터 시간 종료(shutdown /s /t ) 및 작업과 유사합니다.
어떤 아이디어가 있나요? 이것이 가능한가?
답변1
어떻게 하면 60초 안에 프로그램을 닫을 수 있나요?
ping
또는 를 사용하여 timeout
시간 지연을 생성 할 수 있습니다 .
timeout
Windows XP에서는 사용할 수 없습니다.timeout
카운트다운을 제공합니다.
ping
해결책
60초 후에 종료하려면 notepad
다음 명령을 사용하십시오.
ping 127.0.0.1 -n 61 > nul && taskkill /im notepad.exe
메모:
ping
s 사이에 1초의 지연이 있으므로 61개의 핑이 필요합니다 .
예:
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(유즈넷 2001.)
예를 들어 40초 지연의 경우:
핑 -n 41 127.0.0.1>널
원천시간 초과
timeout
해결책
60초 후에 종료하려면 notepad
다음 명령을 사용하십시오.
timeout /t 60 && taskkill /im notepad.exe
노트:
timeout
Windows XP에서는 사용할 수 없습니다.timeout
제대로 구현되지 않았습니다. "시간 초과 1"을 수행하면 "다음 초"까지 기다리게 되며 이는 0.1초 안에 발생할 수 있습니다. "timeout 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
추가 자료
- Windows CMD 명령줄의 AZ 인덱스- Windows cmd 라인과 관련된 모든 것에 대한 훌륭한 참고 자료입니다.
- 시간 초과- 배치 파일 내에서 사용하기 위해 몇 초 또는 몇 분 동안 실행을 지연합니다.
- 핑- 네트워크 연결을 테스트합니다. 성공하면 ping이 IP 주소를 반환합니다.
- Windows 명령 프롬프트에서 5초 동안 잠을 자는 방법은 무엇입니까? (또는 도스)
답변2
사용해 보세요작업 스케줄러.
- 원하는 프로그램이 시작될 때 이벤트가 발생하도록 이벤트 로깅을 구성합니다.
- #1의 특정 이벤트가 기록될 때 실행되도록 예약된 작업을 구성합니다. 예약된 작업에서는 지연을 설정할 수 있으며(귀하의 경우 60초) 모든 명령/스크립트를 실행할 수 있습니다.
답변3
내 예를 들어보세요.
choice /t 5 /d a /c ab /n >nul & taskkill /im URprocess.exe
설명: "choice"는 5초 동안 기다렸다가 종료된 후 taskkill이 "URprocess"를 닫습니다.
답변4
Windows 10과 함께 제공되는 scriptrunner.exe를 사용합니다. 내 것을 검색해야 했는데 경로에 없었습니다. 다음에서 문서를 찾을 수 있습니다.https://ss64.com/nt/scriptrunner.html
나는 종종 많은 eBook을 epub으로 변환하지만 변환이 중간에 중단되는 경우가 많습니다. 그래서 다음 내용으로 배치를 만들었습니다.
@echo off
for /F "delims=" %%a in (files.txt) do (
if not exist "%%a.epub" ScriptRunner.exe -appvscript "c:\Program Files (x86)\calibre2\ebook-convert.exe" "%%a" "%%a.epub" -appvscriptrunnerparameters -timeout=60
if exist "%%a.epub" del "%%a"
)
Files.txt에는 변환해야 하는 경로가 있는 모든 파일이 포함되어 있습니다. 변환을 수행하려면 caliber의 ebook-convert.exe를 사용합니다. 인수 -timeout=60은 실행이 중지된 후의 시간(초)입니다(여기서는 60). 변환이 더 일찍 준비되면 다음 줄이 실행됩니다.
이 모든 것이 잘 작동합니다.