(Dos) not Exist 조건문으로 폴더 생성시 새로운 이름으로 폴더 만들기 Dos_Network_Security


다른 작업을 하다가 도스(Dos) 의 조건문을 이용해 폴더를 만드는 구문을 짜보았다.

test.bat 파일을 만들고, 아래의 구문을 넣고 실행시키면 된다.(한줄로)

if not exist "새 폴더" (mkdir "새 폴더") else if not exist "새 폴더 (2)" (mkdir "새 폴더 (2)") else if not exist "새 폴더 (3)" (mkdir "새 폴더 (3)") else if not exist "새 폴더 (4)" (mkdir "새 폴더 (4)") else if not exist "새 폴더 (5)" (mkdir "새 폴더 (5)")

이 구문은 현재 배치파일(.bat)이 실행된 경로에 '새 폴더' 라는 이름의 폴더가 있는지 체크한 후 있으면 그 뒤의 구문으로 넘어간다.
그래서, '새 폴더' , '새 폴더 (1)' , '새 폴더 (2)' , '새 폴더 (3)' ...
같은 식으로, 다른 이름을 붙여 폴더를 생성하도록 하는 구문이다.

이런 동작은 윈도우 자체에서 제공하는 '새로 만들기' 기능의 폴더 만들기를 동작시킬때와 똑같은 동작이다.
(V3Zip 이나 알집을 설치하면 마우스 우측버튼 메뉴에 생성되는 '새 폴더 만들기' 기능과 동일)

현재, 5개의 이름만 검색하도록 되어 있으며, 5번도 중복이 되면 아무 동작도 하지 않는다.
실제로는 도스창에서 에러가 나지만, 바로 닫히기 때문에 볼수는 없다.
5번 이후까지도 계속 중복체크를 해서 폴더를 생성하고 싶다면, 조건문을 뒤에 더 붙여주면 된다.

도스창이 열렸다 닫히는 문제는, 자료를 검색해 보고 테스트를 해보았지만, 도스창 자체가 아예 안뜨게 할수는 없다.
WSCript.Shell 을 이용하면 우회해서 도스창이 안뜨고 동작하도록 할수는 있다.

첨부파일: mkdir_test.zip

핑백

덧글

댓글 입력 영역
* 비로그인 덧글의 IP 전체보기를 설정한 이글루입니다.


통계 위젯 (화이트)

12691320
8822
10213387

google_myblogSearch_side

▷검색어

Flag Counter style2