2009년 3월 21일 토요일

스크립트란 무엇인가? 배치파일이란 무엇인가?

말뜻

스크립트는 다른 컴퓨터 프로그램을 제어하기 위한 프로그래밍 언어이다.[footnote]<a href="http://ko.wikipedia.org/wiki/%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8_%EC%96%B8%EC%96%B4" target="_blank" >한국어 위키백과 : 스크립트 언어</a>[/footnote]
배치파일은 도스나 그와 호환되는 환경에서 여러 프로그램을 한데 묶어 작업을 원활히 하기 위한 스크립트 파일이다. MS-DOS, OS/2, 윈도에서 쓰이는 배치 파일(batch file)은 명령 인터프리터에 의해 실행되게끔 고안된 명령어들이 나열되어 있는 텍스트 파일이다. 배치 파일이 실행될 때, COMMAND.COM 또는 cmd.exe와 같은 셸 프로그램이 파일을 읽어 명령어를 줄 단위로 실행한다. 배치 파일은 보통 실행 파일을 자동으로, 연속적으로 실행할 때 유용하며 시스템 관리자가 따분한 일들을 자동화하기 위해 자주 사용한다.[footnote]<a href="http://ko.wikipedia.org/wiki/%EB%B0%B0%EC%B9%98_%ED%8C%8C%EC%9D%BC" target="_blank" >한국어 위키백과 : 배치 파일</a>[/footnote]
마이크로소프트에서 사용하는 이름은 일괄 파일이다.

이곳에서는 스크립트는 그다지 다루지 않는다. 대부분 배치 파일에 대해서만 다루게 된다.

간단한 예제

누구나 만들어 보았을 예제 하나.

  1. 명령 프롬프트를 연다. 시작 단추 >> 프로그램 >> 보조프로그램 >> 명령 프롬프트
  2. 우선은 배치파일과 관련이 없는 명령어 조합을 보자. 굳이 배치파일을 만들지 않아도 된다. 아래와 같이 입력한다. 당연한 말이겠지만 <Enter>는 그것을 입력하라는 말이 아니라 "엔터" 키를 누르라는 말이다.
    cls <Enter>
    echo Hello World! <Enter>
    pause <Enter>
  3. 어떻게 되었는지를 확인한다.
  4. 이번에는 배치파일을 만들어 보자. 우선 배치파일을 만들기 위해 메모장 등을 사용할 수도 있지만, 여기에서는 명령 프롬프트에서 바로 만들기로 하자.
    copy con clear.bat
  5. 위 명령어는 콘솔(모니터와 기보드)의 입출력을 clear.bat 파일로 저장하는 환경을 만든다는 뜻이다. 간단히 말해 키보드로 입력 받아 clear.bat로 저장한다고 보면 된다.
  6. 줄이 바뀌면서 커서 위치가 맨 왼쪽으로 간다. 여기에서 아래 문장을 차례대로 입력한다.
    cls <Enter>
    echo Hello World! <Enter>
    pause <Enter>
    <Ctrl-Z>
  7. 그림으로 확인하면 이렇게 된다.
  8. clear.bat 라고 입력하고 엔터!
    실행 화면을 그림으로 확인하면 다음과 같다.
  9. 뭔가 깔끔하지 않지만, 배치 파일 하나가 만들어졌다.

이 배치 파일은 단순히 화면에 메시지 하나, 그것도 프로그래밍 언어 책에 거의 대부분 나오는 Hello World를 이용했다.

다음 예고

배치 파일에서 이용할 수 있는 명령어를 알아보기로 하자.

댓글 8개:

  1. 0ㅅ0 와와 신기합니다 - _ㅜ 배치파일 이름만 들어보고..어떻게 써먹는건지 되게 궁금햇는데 멋져요!

    답글삭제
  2. @꼬마뽀라 - 2009/05/18 16:11
    고맙습니다. 스크립트 가운데 가장 쉽다고 생각합니다.

    답글삭제
  3. 반가운 단어^^

    도스 시절엔 좀 활용했었는데, 여전히 사용도가 있네요.

    다시 배워야겠습니다. 고마와요^^

    답글삭제
  4. @Popeye - 2010/03/28 14:51
    요즘은 거의 쓰지를 않습니다. 앞으로 64비트 윈도에서는 더 이상 지원되지 않을 거라고 합니다. 일종의 삽질인 셈이죠. 흑흑 T,T

    답글삭제
  5. @류청파(koc/SALM) - 2010/03/28 15:31
    그래도 알고 있으면 도움 되겠죠^^

    답글삭제
  6. @Popeye - 2010/03/28 14:51
    그렇게 보아 주시니 고맙습니다.

    답글삭제
  7. ㅎㅎ



    if문에서 에러레벨 관련 때문에 궁금해서 왔다가.



    다읽고 가겠네요. 감사해요!

    답글삭제
  8. @진만고양이 - 2010/04/01 16:13
    오히려 제가 더 고맙지요. ^^a

    답글삭제