명령행 인자 처리

쉘 스크립트도 표준 유닉스 명령처럼 사용되어, 그 명령행 인자를 처리할 수 있습니다.

그 명령행 인자는 그 쉘 스크립트 바로 다음에 오는 것을 $1, 그 다음에 오는 것을 $2, 이런 식으로 해서, $9까지의 쉘 변수로 처리할 수 있습니다. 각 명령행 인자의 구분은 잘 알다시피 공백문자로 합니다.

즉, 그래서, $0 변수는 그 쉘의 이름 자체를 의미합니다.

아홉개의 명령행 인자만이 변수로 사용될 수 있지만, shift 명령을 이용해서, 더 많은 명령행 인자를 처리 할 수 있습니다.

쉘 스크립트의 모든 인자를 뜻하는 변수로는 $* 기호가 사용됩니다. 이것은 파일 이름 같은 것이 인자로 사용될 때 유용하게 쓰입니다. 예를 들어:

   cat printps
   # 이 스크립트는 ASCII 파일을 포스트스크립트 파일로 바꾼 후,
   # ps1 프린터로 인쇄하는 것입니다.
   # 이 스크립트는 "a2ps" 유틸리티를 사용합니다.
   a2ps $* | lpr -Pps1
   printps elm.txt vi.ref msg

이것은 printps 라는 스크립트의 내용을 보이고, 그것을 이용해서, 세개의 파일을 인쇄하는 경우입니다.


[차례] [찾기] [색인]