Please Enable JavaScript!
Mohon Aktifkan Javascript![ Enable JavaScript ]

[Batch] For 반복문

2015. 9. 15. 15:00programming/batch

728x90

배치 파일 : 일괄작업파일로서 컴퓨터 운영체계에서 수행되는 명령어들로 구성된 텍스트파일이다. 키보드로 한 번에 하나씩 입력해야 하는 일련의 명령어들을 하나의 파일로 작성하기 때문에 배치파일이라고 부르며, 공통적으로 필요한 배치파일들은 운영체계의 일부분으로 지정된다. 배치파일은 명령어 라인(명령 프롬프트)에서 단지 배치파일의 이름을 입력함으로써 실행시킬 수 있다.



메모장에 작성하고 저장할때 확장자로는 .bat 하면 됩니다.


1. for명령어는 변수를 사용하는 데 CMD에서 for를 사용할 때는 %a식으로 %를 하나 쓰는 반면에

Bat 에서는 %%a 식으로 %를 두개 쓴다.


for 반복문 


 i 는 변수 앞에 1은 시작 값, 중간 1 증가값, 뒤에 5 마지막 값 괄호 안 명령어 

꺽새 >> 2개는 a라는 이름의 Text 파일에 추가하여 내용을 저장하는 명령

@echo off 

for /l %%i in (1,1,5) do (

echo %%i >> a.txt

)



배치파일을 만드세요

# 계정생성.bat

 - 계정생성.bat 실행 시 SS1~1000이라는 로컬사용자 생성

 - 계정이 하나 하나 만들어 질 때 마다 C:\생성완료.txt 

파일에 내용으로

" 1. [ 날짜 / 시간 ] SS1 생성 완료"

" 2. [ 날짜 / 시간 ] SS2 생성 완료"

" 3. [ 날짜 / 시간 ] SS3 생성 완료"

......

# 계정삭제.bat

 - 계정삭제.bat 실행 시 SS1~1000이라는 로컬사용자 삭제

 - 계정이 하나 하나 삭제 될 때 마다 C:\삭제완료.txt 

파일에 내용으로

" 1. [ 날짜 / 시간 ] SS1 삭제 완료"

" 2. [ 날짜 / 시간 ] SS2 삭제 완료"

" 3. [ 날짜 / 시간 ] SS3 삭제 완료"

......



### 힌트 : FOR 명령어, >, >>, echo



REM 생성

for /l %%i in (1,1,5) do (

net user SS%%i /add

echo %%i. [ %date% / %time% ] SS%%i 생성 완료 >> C:\생성완료.txt

)



for /l %%i in (1,1,5) do (

net user SS%%i /delete

echo %%i. [ %date% / %time% ] SS%%i 삭제 완료 >> C:\삭제완료.txt

)


## REM -> 주석


ECHO [문자열] - 문자열을 화면에 그대로 출력


ECHO ON - 이후부터 수행되는 '명령어' 를 화면에 보여준다.

ECHO OFF - 이후부터 수행되는 '명령어' 를 화면에 보여주지 않는다. ECHO OFF 조차도 보여주기 싫다면 앞에 @를 붙인다. @ECHO OFF

ECHO - 현재 ECHO ON/OFF 상태를 확인한다.



0000 ~ 9999 출력


@echo off

rem 0000 ~ 9999 출력


for /L %%a in (0,1,9) do (

for /L %%b in (0,1,9) do (

for /L %%c in (0,1,9) do ( 

for /L %%d in (0,1,9) do (

echo %%a%%b%%c%%d


)

)

)

)


728x90