반응형
Windows 배치 파일에서 무한 루프를 만드는 방법은 무엇입니까?
이것이 기본적으로 제가 배치 파일에서 원하는 것입니다.아무 키나 눌러 "일시 중지"를 통과할 때마다 "작업 수행"을 다시 실행할 수 있습니다.
while(true){
Do Stuff
Pause
}
여기엔 오직 하나뿐인 것처럼 보입니다.for
사용 가능한 루프 및 없음while
일괄 루프.그럼 무한 루프를 만들려면 어떻게 해야 합니까?
좋은(?) 오래된 것을 사용하는 것은 어떻습니까?
:loop
echo Ooops
goto loop
더 유용한 예는 이 항목을 참조하십시오.
에서 사용할 수 있는 한 줄 명령의 무제한 루프cmd
창:
FOR /L %N IN () DO @echo Oops
1부터 10까지 계산하고 0을 증분하는 정말 무한한 루프입니다.
10에 도달하려면 무한 또는 그 이상의 증분이 필요합니다.
for /L %%n in (1,0,10) do (
echo do stuff
rem ** can't be leaved with a goto (hangs)
rem ** can't be stopped with exit /b (hangs)
rem ** can be stopped with exit
rem ** can be stopped with a syntax error
call :stop
)
:stop
call :__stop 2>nul
:__stop
() creates a syntax error, quits the batch
이것은 정말 무한 루프가 필요할 때 유용할 수 있습니다. 왜냐하면 그것은 a보다 훨씬 빠르기 때문입니다.goto :loop
for-loop이 시작할 때 한 번만 캐시되기 때문에 버전입니다.
읽어주세요help GOTO
그리고 해보세요
:again
do it
goto again
다른 더 나은 방법:
:LOOP
timeout /T 1 /NOBREAK
::pause or sleep x seconds also valid
call myLabel
if not ErrorLevel 1 goto :LOOP
이렇게 하면 오류도 처리할 수 있습니다.
다음은 루프를 사용하는 예입니다.
echo off
cls
:begin
set /P M=Input text to encode md5, press ENTER to exit:
if %M%==%M1% goto end
echo.|set /p ="%M%" | openssl md5
set M1=%M%
Goto begin
이것은 Windows에서 메시지를 md5 해시로 암호화해야 할 때 사용하는 간단한 배치이며(열린 sl 필요), 프로그램은 Ctrl+C 또는 빈 입력을 제외하고는 충성스럽게 반복됩니다.
언급URL : https://stackoverflow.com/questions/5487473/how-to-create-an-infinite-loop-in-windows-batch-file
반응형
'programing' 카테고리의 다른 글
목록이 정렬되었는지 여부를 확인하는 Pythonic 방법 (0) | 2023.04.26 |
---|---|
Java 컴파일러 수준이 설치된 Java 프로젝트 패싯의 버전과 일치하지 않습니다. (0) | 2023.04.26 |
objectForKey와 valueForKey의 차이점은 무엇입니까? (0) | 2023.04.26 |
쉼표로 구분된 문자열을 목록으로 변환하는 방법 (0) | 2023.04.26 |
블록 내부의 변수를 블록 외부의 변수에 할당 (0) | 2023.04.26 |