'리눅스 쉘 매개변수 확장'에 해당되는 글 1건

"매개변수 확장"(Parameter Expansion) 이라는 용어가 맘에 안들긴 하지만, 다들 그렇게 부르니 그렇게 정리한다.

 

1. ${name}

name 변수의 값으로 치환한다.

 

2. ${name:=james}

name 변수의 값으로 치환하되, name 변수가 null이면 james 문자열을 name 변수에 저장한 후 치환한다.

 

3. ${name:-james}

name 변수의 값으로 치환하되, name 변수가 null이면 james 문자열로 치환한다.(저장X)

 

4. ${name:+james}

name 변수의 값으로 치환하되, name 변수가 null이 아니면 james 문자열로 치환한다.(name 변수가 null이면 그대로 null로 치환된다.)

 

5. ${name:?james}

name 변수의 값으로 치환하되, name 변수가 null이면 error상태로 종료되며 james 문자열을 보여준다.

 

6. ${#name}

name 변수의 값의 문자길이를 반환한다.

 

7. ${name:3}

name 변수의 값에서 3만큼 앞부분을 삭제한 후의 값을 반환한다.

e.g. 

name=abcdefg
echo ${name:3} # defg

 

8. ${name:3:2}

name 변수의 값에서 3만큼 앞부분을 삭제한 후의 값에서 앞의 2개 문자열을 반환한다.

e.g.

name=abcdefg
echo ${name:3:2} # de

 

블로그 이미지

망원동똑똑이

프로그래밍 지식을 자유롭게 모아두는 곳입니다.

,