노무현 대통령 배너
BLOG main image
왕미친놈의 왕미친세상입니다. 미친 소리는 써도 되지만, 근거 없는 소리는 쓰면 안 됩니다.


Giveaway of the Day - HDData

하루에 하나씩 정품 소프트웨어를 주는 Giveaway of the Day 홈페이지에서 2010년 3월 13일HDData(HD데이터)를 준다고 합니다.

Giveaway of the Day 홈페이지 - 오늘은 HDData 프로그램이 공짜!

Giveaway of the Day 홈페이지 - 오늘은 HDData 프로그램이 공짜!

프로그램 설명

HDData는 모든 종류의 하드 디스크 인수(파라미터)를 측정합니다. 그 인수 가운데 하나가 한계값을 넘기거나 SMART 오류를 나타내면, HDData는 경고를 하고 당신을 위한 활동을 합니다. SMART 알림 설정이나 하드디스크 온도 경고 등의 HDData 활동을 제어할 수 있습니다.

돌이킬 수 없는 고장이 일어나거나 하드 디스크가 과열되기 전에 사용자는 작업을 저장할 시간을 가질 수 있습니다. 모든 것을 잃어버리기 전에 대처할 수 있습니다.

프로그램 정보

  • 시스템 요구사항
    • 운영체제 : WinNT 4.x, WinXP, Windows 2000, Windows 2003, Windows Vista[각주:1]
  • 제공자 : MOLENKAMP software (몰렌캠프 소프트웨어)
  • 제공자 홈페이지 : http://www.molenkamp.com/
  • 파일 크기 : 4.57 MB
  • 가격 : 이 프로그램은 12.95달러입니다. 그러나 Giveaway of the Day 방문자에게는 시간 제한(time-limited)으로 무료로 제공됩니다.
  • 시간 제한 : 2010년 3월 13일 오후 5시부터 14일 오후 5시까지 (한국 시간)

다운로드 및 설치

Giveaway of the Day - HDData 페이지에서 정해진 기간 동안 다운로드할 수 있습니다.

다운로드 받은 파일의 압축을 풀고, readme.txt 파일을 잘 읽고 실행하십시오. 이 readme.txt 파일은 다운로드 받은 모든 압축 파일 안에 들어 있습니다. 조심스럽게 소프트웨어를 설치한 뒤에 활성화하면 됩니다.

압축 푼 뒤의 디렉터리

압축 푼 뒤의 디렉터리

위 그림처럼, 압축을 풀면, 파일이 둘 또는 셋 나타나게 됩니다. 이때 readme.txt 파일과 Setup.exe 파일은 반드시 존재합니다. Setup.exe 파일을 실행하여 프로그램을 설치한 뒤 Activate.exe 파일을 실행하면 활성화됩니다.

약관 및 조건

약관과 조건

당신이 Giveaway 기간에 다운로드하여 설치한 소프트웨어에 대해 다음과 같은 중요한 제한이 있음을 기억하기 바랍니다.

  1. 무 료 기술 지원을 받을 수 없습니다. (No free technical support)
  2. 다음 버전의 무료 업그레이드를 받을 수 없습니다. (No free upgrades to future versions)
  3. 엄격하고 순수하게 비상업적 사용만 허용됩니다. (Strictly non-commercial usage)

이 소프트웨어 제품은 묵시적이든 명시적이든 어떠한 종류의 보증없이 "있는 그대로" 제공된다. 제한 없이, 법률에 의해 허용되는, 다운로드한 소프트웨어 제품의 품질 및 성능을 비롯한 모든 위험을 최종 사용자가 부담해야 한다.

THIS SOFTWARE PRODUCT IS PROVIDED "AS IS" WITHOUT ANY WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT LIMITATION, TO THE FULLEST EXTENT ALLOWABLE BY LAW, END USER ASSUMES THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE DOWNLOADED SOFTWARE PRODUCT.

기타

  • 한글/한국어 지원
    • 설치 시 한글/한국어 지원 : 아니오 (영어)
    • 실행 시 한글/한국어 지원 : 아니오 (한국어 언어 파일 추가 가능)
  • 설치 시 및 설치 후 프로그램 종료/제거/설치
    • 설치 후 재시작 : 아니오
  • 설치 시 라이선스 : 5일 사용 평가판 - 활성화를 통해 무료 사용 라이선스로 바뀝니다.
    등록 전

    등록 전

    등록

    등록 후

  • 기타 : 비스타에서는 프로그램을 설치하거나 활성화할 때 관리자 계정(administrator)이 필요할 수도 있습니다.

관련 문서

내 부 문서

외부 문서

이 글은 스프링노트에서 작성되었습니다.

  1. 윈도7에 대한 내용은 없습니다. [본문으로]
글쓴이는 koc/SALM입니다.
본문에 저작권에 대한 사항이 나타나지 않거나, 저작권이 BY-SA로 표기되어 있다면,
이 글은 GFDL로 공개한 글입니다.

들어가기에 앞서 자꾸 예고에 없는 내용이 끼어들어 죄송하다는 말을 먼저 하겠다.

들어가며

매개변수가 배치파일에 전달되는 모습을 그림으로 알아보는 자리를 마련했습니다. 뭐든 그림이 더 알기 쉽다고 생각하기 때문입니다.

말뜻

매개변수(parameter)는 도스와 윈도의 명령줄에서 어떤 명령어와 관계를 맺고 어떤 작용을 지시하는 변수나 인자를 가리킨다고 했습니다. 그런데 좀 더 보편적으로 설명한다면 운영체제와 명령어가 관ㄹ계를 가지고 있는데, 이때 명령어에 어떤 작용을 지시하는 변수를 매개변수라고 부릅니다.

매개변수와 응용프로그램

매개변수는 명령줄에서 입력받는 값이 된다. 이때 도스와 윈도에서 첫번째 매개변수를 %0이라 부르며, 이것은 운영체제에서 처리하게 된다. 다시 말해 %0을 처리하여 이것을 실행할 수 있는지, 실행할 수 없으면 그 파일과 연결된 프로그램을 호출하여 처리합니다. 다시 말해 명령 프롬프트에서 문서 파일 이름을 입력하고 <Enter>를 입력하면 바로 그 문서와 연결된 문서 편집기를 호출하여 실행시켜 준다.

우선 목록은 다음과 같다.

이때 명령줄에서 exam.txt 라고 입력하면 저 파일에 맞는 프로그램을 호출하면서 %0 매개변수로 입력 받은 exam.txt 파일을 읽어온다.

위와 같이 파일이 연결된 프로그램을 가지고 있다면 바로 읽어올 수 있다. 이것은 .txt 파일에 대한 정보를 윈도XP가 레지스트리에 가지고 있기 때문에 가능한 일이다.

이것은 다음과 같이 나타낼 수 있다.

명령줄에 입력된 매개변수는 %0과 %*로 나뉜다. 이때 매개변수 %1부터는 윈도에서 직접 구분하여 매개변수 %0으로 넘겨주는 때도 있고, 그게 아니면 %*과 같은 문자열의 형태로 넘겨줄 수도 있다.

위와 같이 윈도에서 %0 매개변수에 해당하는 ExecFile.exe를 불러들여 실행하면서 %1 매개변수부터는 문자열의 형태 또는 이미 분류된 형태로 %0 매개변수로 넘겨줘서 처리하라고 시키게 된다.

배치파일의 경우는 배치파일 안에 명령어가 하나일 때와 여럿일 때로 구분하여 생각할 수 있다.

위와 같이 배치파일 내부에서 입력 받은 매개변수를 모두 이용할 수도 있고, 그게 아니라 매개 변수 가운데 일부만을 이용할 수도 있다. 그것은 배치파일 제작자가 하기 나름이다. 일부러 더미 변수(쓰레기값)를 입력 받게 할 수도 있다.

배치파일 내부에서 사용한 명령어가 여럿이라면 위와 같이 복잡한 구성을 지닐 수도 있다. 그러나 대개는 %1, %2, %3, %4, %5, %6, %7, %8, %9, %*과 같은 매개변수는 배치파일 첫머리에서 해석하여 프로그래머가 지정한 환경변수로 치환하여 저장하는 것이 일반적이며, 위와 같은 형태는 예시를 들기 위해 나타낸 상황일 뿐임에 유의하자.

실제로 위와 같이 프로그램을 작성했다면, 그다지 좋은 프로그래밍 습관이 아니라고 해야겠다.

과제

지난 시간에 냈던 과제의 결과는 다음과 같다.

  • ECHO 명령을 이용하여 화면에 OFF라는 세 글자를 출력하시오. 
  1. @ECHO.OFF

위의 코드는 아래와 같은 결과를 보인다. 위의 코드에서 ECHO와 OFF 사이에 빨간 점(.)을 잘 보자.

OFF

다음 코드는 OFF 앞에 공백을 한 칸 추가할 수 있다. 공백에는 색깔을 넣었다.

  1. @ECHO. OFF

다음 코드는 OFF 앞에 공백을 두 칸 추가할 수 있다. 공백에는 서로 다른 색깔을 넣었다.

  1. @ECHO.  OFF

다음 코드는 OFF 앞에 공백을 두 칸 추가한 것과 같은 효과를 줄 수 있다. <Alt+255>는 아스키문자 255번을 가리킨다. 위의 코드들과는 달리 빨간 점(.)이 없다.

  1. @ECHO <Alt+255>OFF
 
  • DIR 명령을 이용하여 원하는 폴더(디렉터리)의 내용을 폴더(디렉터리)만 보여주도록 한다. /A /P 선택사항을 반드시 사용할 것.


  1. DIR /A:D /P %1
  2. DIR /AD /P %1

위의 두 코드 가운데 하나가 자신의 배치 파일에 있고, 그것이 실제로 작동하면 정답이다.

다음 예고

if 명령 이해하기.

이 글은 스프링노트에서 작성되었습니다.

'스크립트 > 배치파일' 카테고리의 다른 글

IF ERRORLEVEL에 쓰이는 종료코드  (12) 2009.04.14
IF 기본 설명  (6) 2009.04.09
배치파일에 매개변수 전달하기  (0) 2009.04.01
배치파일 멈추기  (1) 2009.03.29
그밖에 출력  (2) 2009.03.26
글쓴이는 koc/SALM입니다.
본문에 저작권에 대한 사항이 나타나지 않거나, 저작권이 BY-SA로 표기되어 있다면,
이 글은 GFDL로 공개한 글입니다.

들어가며

배치파일에서 프로그램을 실행할 때 경우에 따라서는 잠시 멈추거나, 때에 따라서 완전히 종료해야 할 수도 있다.

그러한 경우는 주로 배치파일의 일부에서 오동작이 생겨서 배치파일 전체에 영향을 주는 때나 진행 화면을 잠시 멈춘 뒤 보고 싶을 경우 등이 이에 해당한다.

잠시 멈추기

키를 눌러 잠시 멈추기

윈도 폴더를 보여주는 배치파일을 만들어 보자.

  1. @echo off
  2. rem 예제 5 : 윈도 폴더를 보여주는 배치파일
  3. rem 파일명 : exam05.bat
  4. rem 지은이 : koc2000/SALM
  5. rem 저작권 : GPL v3
  6.  
  7. echo 예제 5.
  8. echo 윈도 폴더를 보여준다.
  9. echo 보다가 잠시 멈추려면 Pause 키나 Ctrl+S를 누르시오.
  10. echo.
  11. dir C:\WINDOWS /s /a
  12. echo 끝.

배치파일을 만들 때에는 안내문을 보여줄 수 있게 하려고 했는데, 뭔가가 번개같이 지나가 버려 전혀 알아볼 수가 없었다. 본의 아니게 번갯불에 콩 볶는 모습을 보여준 격이 되었다.

 <예제5 결과 화면>

<예제5 결과 화면>

이번에는 명령 프롬프트에서 exam05 라고 명령을 내린 뒤에 얼른 <Pause> 키를 누르도록 하자. <Pause> 키는 키보드의 왼쪽 위, 숫자 패드의 왼쪽 위에 있다.

<예제5 잠시 멈춘 화면>

<예제5 잠시 멈춘 화면>

이때 <Pause> 키는 잠시 멈추라는 기능을 가지고 있다. 물론 윈도에서는 거의 동작하지 않지만, 이렇듯이 명령 프롬프트나 도스 상태에서 잘 작동한다. 도스 상태에서도 게임 등에서는 마찬가지로 거의 동작하지 않는다.

멈춤 명령

물론 도스에서도 명령행에서 멈추게 하는 명령어가 있다.

  1. @echo off
  2. rem 예제 5-1 : 윈도 폴더를 보여주는 배치파일
  3. rem 파일명 : exam05-1.bat
  4. rem 지은이 : koc2000/SALM
  5. rem 저작권 : GPL v3
  6.  
  7. echo 예제 5-1.
  8. echo 윈도 폴더를 보여준다.
  9. echo 보다가 잠시 멈추려면 Pause 키나 Ctrl+S를 누르시오.
  10. echo 다시 재개하려면 아무 키나 누르십시오.
  11. echo.
  12. echo 윈도 폴더를 보여줍니다.
  13. pause
  14. echo.
  15. dir C:\WINDOWS /s /a
  16. echo 끝.

위에 추가된 PAUSE 명령이 그것이다.

위의 명령을 실행시키면 아래처럼 일단 한 번 멈춘다.

<예제5-1 잠시 멈춘 화면>

<예제5-1 잠시 멈춘 화면>

강제 중단

방금 만든 exam06.cmd 파일을 다음과 입력하여 저장하자.

  1. @echo off
  2. rem 예제 6 : 시간과 날짜를 보여주는 도중에 잠시 멈추고
  3. rem          강제 종료에 대해 알려준다.
  4. rem 파일명 : exam06.cmd
  5. rem 지은이 : koc2000/SALM
  6. rem 저작권 : GPL v3
  7.  
  8. echo 예제 6.
  9. echo 날짜를 보여주고 멈춥니다.
  10. echo.
  11. echo 날짜를 바꾸려면 알맞은 날짜를 형식에 맞추어 넣으시오.
  12. echo 날짜를 바꾸지 않으려면 Enter를 누르시오.
  13. echo.
  14. date
  15. echo.
  16. echo 시간을 보여주고 멈춥니다.
  17. echo 종료하려면 Ctrl+C 또는 Ctrl+Break를 누르시오.
  18. pause
  19. echo.
  20. echo 시간을 바꾸려면 알맞은 시간을 형식에 맞추어 넣으시오.
  21. echo 시간을 바꾸지 않으려면 Enter를 누르시오.
  22. echo.
  23. time
  24. echo.
  25. echo 끝.

줄 수는 많지만, 실제 코드는 얼마 되지 않는다. 굳이 실행 화면은 보이지 않겠다. 실제로 실행해 보면 몇 가지 의문이 생길 터이다. 그때 질문을 올리기를 바란다. 위에서 보이고자 하는 바는 명령줄에서 <Ctrl+C> 또는 <Ctrl+Break>를 누르면 강제 중단하는 기능이 있다는 데 있다.

매개 변수

이번에는 지난 번에 예고했던 "파라미터"를 배치파일에 전달하는 방법에 대해서는 다루지 않겠다. 차례로 보면 그것을 알려줘야 하지만, 그것이 무엇인지만 설명하고 넘어가겠다.

파 라미터(parameter)는 도스와 윈도에서 매개 변수로 불린다. 이것은 명령줄에서 어떤 명령어와 관계를 맺고 어떤 작용을 지시하는 변수나 인자를 가리킨다. 자주 언급되었던 ECHO OFF 명령에서 실제 명령어는 ECHO뿐이고, OFF는 매개 변수이다.

  1. cls
  2. echo Hello World!
  3. pause

맨 처음 소개했던 clear.bat 파일의 내용이다.

위에서 CLS, ECHO, PAUSE는 명령어이고, ECHO 다음에 오는 Hello World! 부분은 매개 변수이다. 이때 명령어 자신도 매개 변수에 포함된다. 이것은 아주 특별한 경우이다.

  1. @echo Hello World!

위와 같이 입력하고 Hello.cmd 라고 저장하자. 단 한 줄이지만, 엄연히 배치파일이며, 프로그램이다. (색깔은 구분하기 위해 넣은 것이다. 내용만 제대로 입력하면 된다.)

실행시켜 보면 다음과 같이 나온다.

<Hello.cmd 실행 화면>

이대 내용을 약간 바꾸어 HelloMe.cmd 라고 저장하자. 끝에 %0 은 퍼센트 기호와 숫자 0 (영)이다.

  1. @echo Hello %0!

실행 결과는 직접 보고 느끼기 바란다. 그것까지 알려주면 식상할 듯 여겨져 올리지 않았다.

배치파일 이름을 바꾸어서 실행해 보기 바란다. 뒤에 확장자를 붙여 실행해 보고, 붙이지 않고 실행해 보기 바란다.

이때 명령어 자신도 매개 변수에 포함된다. 이것은 아주 특별한 경우이다.

저 말이 무슨 뜻인지 확실히 알게 되리라 생각한다.

아무튼 매개변수를 배치파일에 전달하라고 지정한 적은 없다. 그러나 명령어 해석기 안에는 이미 명령어 자신을 매개변수로 인식하도록 프로그램되어 있다는 점을 기억하자.

요약

  • 명령줄에서 잠시 멈출 때는 <Ctrl+S> 또는 <Break> 키를 누르면 된다.
  • 명령줄에서 강제 종료할 때는 <Ctrl+C> 또는 <Ctrl+Break> 키를 누르면 된다.
  • 파라미터(parameter)는 도스와 윈도에서 매개 변수로 불린다. 이것은 명령줄에서 어떤 명령어와 관계를 맺고 어떤 작용을 지시하는 변수나 인자를 가리킨다.

    • 명령어 자신도 매개변수이다.

지금까지 만들었던 배치파일을 압축하여 묶었다. 몇몇 파일은 강좌에서는 없었던 것도 있지만 시험 삼아 만든 파일이다.

  • 파일 : batch001.zip (3,877 바이트)
  • CRC32 값 : C1D834F1
  • MD5 값 : 7758c952ca718a16c65bb31793d10841

다음 예고

이번에는 지난 번에 예고했던 매개 변수를 배치파일에 전달하는 방법에 대해서는 좀 더 나중에 다루겠다.

일단 다음 강좌에서는 쉬어가는 시간을 마련했다. 기초가 끝났으므로 이것저것 잡다한 이야기를 하겠다.

이 글은 스프링노트에서 작성되었습니다.

글쓴이는 koc/SALM입니다.
본문에 저작권에 대한 사항이 나타나지 않거나, 저작권이 BY-SA로 표기되어 있다면,
이 글은 GFDL로 공개한 글입니다.

카테고리

분류 전체보기 (1005)
스크립트 (22)
벌레와 팁 (126)
소프트웨어 (240)
하드웨어 (6)
이야기 (24)
말의 나무 (506)
미쳐보자 (22)
일기 (48)
아이폰 (10)

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

달력

«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31

글 보관함