리눅스, 자료실, 성경검색, 추억의게임, 고전게임, 오락실게임, rootman, http://www.rootman.co.kr
* 100.24.125.162 *
| Home | Profile | Linux | 자료실 | zabbix | Mysql 5.6 | 갤러리 | 성경검색 | 해피니스 | 자유게시판 | 게시물검색 | L | O | R |    

Shell Positional Parameter(위치변수)

페이지 정보

profile_image
작성자 rootman
댓글 0건 조회 9,979회 작성일 09-02-17 11:29

본문


최종업데이트 : 2012/01/18

Positional Parameter(위치변수)

$0 => 쉘 스크립트 명
$1 => 첫번째 인자
$2 => 두번째 인자
$* => 모든 인자
[email protected] => 모든 인자
$# => 모든 인자 개수
$? => 마지막 실행 return value
$$ => 현재 쉘 스크립트의 PID
$_ => 마지막 인자


(1) ${parameter}
- 실 변수 보호
- 인자가 9개 이상일 때, 중괄호를 해 주어야 합니다.

(2) ${#parameter}
parameter 값의 문자수

(3) ${#identifier[*]}
배열 identifier의 element 수

(4) ${parameter:-word}
parameter의 값이 NOT NULL이면 그 값을 출력 그렇지 않으면 word 값을 출력

(5) ${parameter:+word}
parameter의 값이 NOT NULL이면 그 값을 출력 그렇지 않으면 아무것도 출력하지 않음.

(6) ${parameter:=word}

-------------------------------------------------------------------------
#!/bin/sh
# FileName : argu.sh
echo "----------------------------------------------------";
echo "(1) 쉘 스크립트명 : $0 ";
echo "(2) 첫번째 인자 : $1 ";
echo "(3) 두번째 인자 : $2 ";
echo "(4) 모든 인자 : $* ";
echo "(5) 모든 인자 : [email protected] ";
echo "(6) 모든 인자 개수 : $# ";
echo "(7) 마지막 실행 return value : $? ";
echo "(8) 현재 쉘 스크립트의 PID : $$ ";
echo "(9) 마지막 인자 : $_ ";
echo "----------------------------------------------------";
exit 0;

[[email protected] ~/work]# sh argu.sh 하나 둘 셋 넷 다섯 여섯 일곱
----------------------------------------------------
(1) 쉘 스크립트명 : argu.sh
(2) 첫번째 인자 : 하나
(3) 두번째 인자 : 둘
(4) 모든 인자 : 하나 둘 셋 넷 다섯 여섯 일곱
(5) 모든 인자 : 하나 둘 셋 넷 다섯 여섯 일곱
(6) 모든 인자 개수 : 7
(7) 마지막 실행 return value : 0
(8) 현재 쉘 스크립트의 PID : 20099
(9) 마지막 인자 : (8) 현재 쉘 스크립트의 PID : 20099
----------------------------------------------------



---------------------------------------------------------------------------
문법 : ${parameter:-word}
설명 : 값이 있으면 parameter 변수 값 출력, 없으면 word 대치어 출력
예문 :
[[email protected] tmp]# TMP1=/home/chanho
[[email protected] tmp]# echo ${TMP1:-/home/notNull}
/home/chanho
[[email protected] tmp]# echo ${TMP99:-/home/notNull}
/home/notNull


---------------------------------------------------------------------------
문법 : ${parameter:+word}
설명 : 값이 있으면 word 대이처 출력, 없으면 parameter 변수 값 출력
예문 :
[[email protected] tmp]# TMP1=/home/chanho
[[email protected] tmp]# echo ${TMP1:+/home/notNull}
/home/notNull
[[email protected] tmp]# echo ${TMP99:+/home/notNull}
/home/chanho


---------------------------------------------------------------------------
문법 : ${parameter:+word}
설명 : 값이 있으면 parameter 값을 출력하고, 없으면 word로 할당
예문 :
[[email protected] tmp]# echo ${TMP1:=/home/assign}
/home/chanho

---------------------------------------------------------------------------
문법 : ${parameter:?word}
설명 : 값이 있으면 parameter 값을 출력하고, 없으면 word를 출력하고 exit

[[email protected] tmp]# echo ${TMP1:?/home/assign}
/home/chanho

댓글목록

등록된 댓글이 없습니다.

Total 645건 1 페이지

검색