본문 바로가기
  • ▒ 네모의 쉽게 배우는 네트워크 | 개발 ▒
소소한 팁/윈도우

여러 배치파일 순서대로 실행하는 배치파일 만들기

by 너l모 2022. 3. 4.
반응형

※ 업무하면서 습득한 내용들을 정리해 놓은 포스팅입니다 :P 추가로 궁금하신 점은 댓글로 남겨주시고 필요한 자료 있으면 요청주세요! 잘못된 내용이 있으면 고쳐주시면 감사하겠습니다. 자료 퍼가실 때는 출처 남겨주세요!


 ο 목차

     


    ※ 코드 보는 방법 참고

    ㅇ 달러 기호($)가 있는 경우 -> 리눅스 터미널에서 CLI 명령어 입력

    ㅇ "=#" 기호가 있는 경우 -> psql 쉘에서 명령어 입력

    ㅇ 꺽쇠가 하나 있는 경우(>) -> 윈도우 명령 프롬프트(cmd)에서 명령어 입력

    ㅇ 꺽쇠가 세개 있는 경우(>>>) -> python 쉘에서 명령어 입력


    안녕하세요~

     

    윈도우에서 파이썬과 관련 라이브러리를 자동으로 설치해주는 배치 파일을 만드는 중인데 혹시 저와 같은 고민하는 분들 있을까해서 포스팅 합니다. 

     

    1. 작업 목표

    배치 파일을 순서대로 실행하는 배치파일 만들기

     

    2. 작업 내용

    ㅇ 조건 : 배치파일 1,2,3은 반드시 지정된 순서로 실행되어야 하며, 각 배치파일의 동작이 끝날 때까지 기다렸다가 다음 배치 파일을 실행해야 함

     

    3. 작업 구현

    1) 작업 코드

    @echo off
    
    REM the example of running batch files in sequence
    
    START /wait /b cmd /c 배치파일1.bat
    START /wait /b cmd /c 배치파일2.bat
    START /wait /b cmd /c 배치파일3.bat
    
    pause

    2) 코드 설명

    (1) @echo off : 명령어 실행 과정 없이 "결과"만 출력하도록 하는 명령어

        예1) @echo off 없는 경우 결과 예시

        <테스트 배치파일내용>

    echo test
    
    :: below line is for checking the result
    pause

        <실행 결과>

        예2) @echo off 있는 경우 결과 예시

        <테스트 배치파일내용>

    @echo off
    
    echo test
    
    :: below line is for checking the result
    pause

        <실행 결과>

     

    (2) START /wait /b cmd /c 배치파일명.bat : "새로운 명령 프로프트창"을 열어 배치파일을 실행 후 모배치파일로 "복귀". 모배치파일은 배치파일의 작업이 끝난 후 다음 라인 명령을 수행.

     

      ** START vs RUN vs CALL 명령어의 차이(참고)

      START RUN CALL
    공통점 지정된 배치 파일을 실행
    차이점 - "새로운 cmd 창"에서 명령 수행 후 모배치파일로 "복귀"
    - 새로운 cmd 창을 생성하기 때문에 모배치파일의 변수 공유 불가(X)
    - 복귀 후 모배치파일의 다음 명령줄 라인 실행(순서대로 실행)
    - "새로운 cmd 창"에서 명령 수행(복귀X)
    - 새로운 cmd 창을 생성하기 때문에 모배치파일의 변수 공유 불가(X)
    - RUN 명령어로 실행된 배치파일들은 거의 동시에 각각 독립적으로 실행
    - 모배치파일의 cmd창에서 명령 수행
    - 기존 cmd 창을 공유해서 동작을 수행하기 때문에 모배치파일의 변수 공유 가능
    - CALL 명령어 수행이 끝난 후 모배치파일의 다음 명령 수행(순서대로 실행)

     

    (3) pause : 터미널 출력 내용을 확인하기 위한 명령어. pause가 없는 경우 배치 파일의 명령이 수행이 끝나면 확인없이 cmd 창 바로 종료.

     


    ※ 좋아요와 구독은 큰 힘이 됩니다. 감사합니다. 

     

     

     

    반응형

    댓글