-
배치파일 작성 연습 / 정리카테고리 없음 2023. 2. 20. 22:26
에코 방지
@echo off
utf8 안깨지게하는것
@chcp 65001 1> NUL 2> NUL
주석 :: 두개
endlocal
setlocal
:start
:loop
:endlocal
1번(monitoring server)을 실행시키고 >> 몇시에
2번(run server)을 실행시켜라 >> 몇 초마다 몇 번
===============================
setlocal
:loop
python %1
rem MONITORING SERVER STARTED
python %2
rem CLIENT REQUEST STARTED
echo /a number+=1
if %number% GEQ 100 goto QUIT
goto loop
:QUIT
===============================
변수선언
set varname = 대입값
echo %varname%
변수지우기
set varname =
/a 스위치는 오른쪽에 나오는 문자열이 수심임을 나타낸다.
set /a M+=1 : M에 1을 더한후 새로운 M의 값을 저장
set /a M-=1 : M에 1을 뺀 후 새로운 M값을 저장
set /a M*=1 : M에 1을 곱한 후 새로운 M값을 저장
set /a M/=1 : M을 1으로 나누값을 새로운 M값에 저장
set /a M%=1 : M을 1로 나눈 나머지 값을 새로운 M값에 저장
timeout - sleep기능
timeout /t 10 >> 10초 뒤에 다음 반복실행
반복 - :loop & :quit
:loop
set /a myStopper+=1
if %myStopper% GEQ 10 goto QUIT
goto loop
:QUIT
GEQ : greater than equal (이상)
LEQ : less than equal(이하)
LSS : less(미만)
NEQ : not equal(부정)
C:\Users\cdy16\PycharmProjects\pythonProject\main.py
:: 배치가 끝나면 myStopper 변수가 다시 0으로 초기화됐으면 좋겠는데 다음 배치를 돌릴때
:: 마지막 변수값에서 +1로 돌게됨
==================================
@echo off
@chcp 65001 1> NUL 2> NUL
set batfile=%1
:loop
python %batfile%
set /a cycle+=1
echo %cycle%번째 도는 중
if %cycle% GEQ 3
goto QUIT
:: 배치가 끝나면 myStopper 변수가 다시 0으로 초기화됐으면 좋겠는데 다음 배치를 돌릴때
:: 마지막 변수값에서 +1로 돌게됨
timeout /t 5
goto loop
:QUIT
=====================================
** if 조건 (조건에 따른 실행값) else (조건에 따른 실행값)
>> the syntax of the command is incorrect가 뜨면서 loop이 강제 종료되었다. 알고보니 괄호 전에 반드시 스페이스가 있어야했음..
** if exist 작성
SET msg=HelloWorld
echo %msg%
if defined message (echo hello) else (echo nono)
====================================
@echo off
@chcp 65001 1> NUL 2> NUL
setlocal
SET loopno=%1
:loop
SET /a cycle+=1
echo %cycle%번째 도는 중
if defined loopno (echo %loopno%)
timeout /t 1
if %cycle% GEQ %loopno% (goto quit) else (goto loop)
endlocal
================================
배치파일 돌릴 떄
cd C:\project
monitoring.bat
cd C:\project
run_client.bat 돌릴횟수 돌리는간격반응형