bash 쉘 스크립트에서 변수를 선언하는 방법은 다음과 같다.
VARIABLE=VALUE
그리고 변수를 읽는 방법은 다음과 같다.
VAR2=$VARIABLE
아무튼, 다른 변수에 변수들을 조합해서 내용을 넣는데
공백이 들어가는 문자열의 경우에는 한번에 변수로 들어가지 않는다.
$ test=123 456 789
-bash: 456: command not found
그런 이유로, 문자열은 " "로 넣어주어야 한다.
$ test="123 456 789"
' '는 안에 변수가 있다고 하더라도 치환하지 않고 그냥 출력한다.
$ test="123 456 789"
$ echo '$test'
$test
{}는 함수이다. 즉, 어떠한 내용을 변형 후 값으로 사용하려면 ${} 라고 하면된다.
()는 변수를 감싸준다. 그냥 $(VAR) 이런식으로 사용한다.
선언되지 않은 변수를 사용할 경우에는 null 문자이므로 출력되지 않으나(bash에서)
busybox(ver 1.10.1) 에서는 오작동을 하는 문제가 보였다.
참고 링크
[링크 : http://kaludin.egloos.com/2334564]
[링크 : http://wiki.kldp.org/HOWTO//html/Adv-Bash-Scr-HOWTO/index.html]
VARIABLE=VALUE
그리고 변수를 읽는 방법은 다음과 같다.
VAR2=$VARIABLE
아무튼, 다른 변수에 변수들을 조합해서 내용을 넣는데
공백이 들어가는 문자열의 경우에는 한번에 변수로 들어가지 않는다.
$ test=123 456 789
-bash: 456: command not found
그런 이유로, 문자열은 " "로 넣어주어야 한다.
$ test="123 456 789"
' '는 안에 변수가 있다고 하더라도 치환하지 않고 그냥 출력한다.
$ test="123 456 789"
$ echo '$test'
$test
{}는 함수이다. 즉, 어떠한 내용을 변형 후 값으로 사용하려면 ${} 라고 하면된다.
()는 변수를 감싸준다. 그냥 $(VAR) 이런식으로 사용한다.
선언되지 않은 변수를 사용할 경우에는 null 문자이므로 출력되지 않으나(bash에서)
busybox(ver 1.10.1) 에서는 오작동을 하는 문제가 보였다.
예를 들어 VAR="test string $undefined hello world"를 출력하려고 하면 hello world만 나온다. |
참고 링크
[링크 : http://kaludin.egloos.com/2334564]
[링크 : http://wiki.kldp.org/HOWTO//html/Adv-Bash-Scr-HOWTO/index.html]
'Linux' 카테고리의 다른 글
busybox route 명령어 (0) | 2009.08.06 |
---|---|
grep -r 옵션은 주의! (0) | 2009.08.06 |
bash - eval (0) | 2009.08.03 |
/proc/cmdline 내용 읽어오기 (0) | 2009.08.03 |
setenv() - change or add an environment variable (4) | 2009.08.03 |