'variable'에 해당되는 글 1건

  1. 2010.07.27 [BASH] 변수

[BASH] 변수

CS/Shell/Perl/Python 2010. 7. 27. 14:42

원문 : 고급 Bash 스크립팅 가이드

1. 위치 매개 변수

$0, $1, $2, etc.
: 위치 매개변수로서, 명령어줄에서 스크립트로 넘겨지거나 함수로 넘겨지거나 set 명령어로 강제로 설정됨.

$#
: 명령어줄 인자의 갯수나 위치 매개변수들

$*
: 한 낱말로 표시되는 위치 매개변수들 모두

$@
: $*과 똑같지만 각 매개변수는 쿼우트된 문자열로 취급됩니다. 즉, 해석되거나 확장없이 있는 그대로 넘겨집니다. 그 결과로 각 인자는 각각이 서로 다른 낱말로 구분돼서 표시됩니다.


2. 내장 변수

$GROUPS
: 현재 사용자가 속해 있는 그룹. /etc/passwd에 적혀 있는 현재 사용자의 그룹 아이디 값을 보여줍니다.

$HOME
: 사용자의 홈 디렉토리로, 보통은 /home/username (예 9-10 참고)

$IFS
: 입력 필드 구분자
: 디폴트는 공백문자(빈칸, 탭, 뉴라인)지만 콤마로 구분된 데이타 파일을 파싱하려는 경우처럼 변경이 가능. $*는 $IFS의 첫번째 문자를 사용하는 것에 주의
ex)
$ bash -c 'set w x y z; IFS=":-;"; echo "$*"'
w:x:y:z

$PATH
:실행 파일의 경로, 보통은 /usr/bin/, /usr/X11R6/bin/, /usr/local/bin, 등등.

$PPID
: 어떤 프로세스의 부모 프로세스의 프로세스 아이디(pid)

$UID
: 사용자 아이디 값. /etc/passwd에 저장되어 있는 현재 사용자의 사용자 식별 숫자

$PS1
: 명령어줄에서 볼 수 있는 메인 프롬프트.

$PS2
: 2차 프롬프트로, 추가적인 입력이 필요할 때 ">" 로 표시됨.

$PS3
: 3차 프롬프트로 select 루프문에서 표시됨.

$PS4
: 4차 프롬프트로, 스크립트에 -x 옵션이 걸려서 실행될 때 스크립트의 매 줄마다 "+"로 표시됨.

$PWD
: 작업 디렉토리(현재 있는 디렉토리)


3. 특수 매개변수

$-
: 스크립트로 넘겨진 플래그들

$!
: 백그라운드로 돌고 있는 가장 최근 작업의 PID (process id)

$_
: 바로 이전에 실행된 명령어의 제일 마지막 인자로 설정되는 특수 변수.

$?
: 명령어나 함수, 스크립트 자신의 종료 상태.

$$
: 스크립트 자신의 프로세스 아이디로 보통 임시 파일 이름을 만들 때 사용.

: