0276. bash 인용부호 사용법
큰따옴표 안에 있는 변수는 그 값으로 내용이 바뀌게 된다
작은따옴표 안에 있는 변수는 변수명이 그대로 사용되게 된다.
띄어쓰기 중요하다
str="Hello" 가 맞는 표현이다.
str = "Hello" 는 str 을 명령어로 해석한다.
shell 은 한줄을 읽고 해석하는 가정을 거치며 = 로 변수지정시는 붙여쓰기를 해야 한다.
붙여쓰면 변수대입
띄어쓰면 test 비교연산이다.
#!/bin/bash
str="Hello"
echo "$str World"
echo '$str World'
[root@linuxtest kim]# ./t1.sh
Hello World
$str World
변수내용에 * 나 ? 등 파일명에 와일드카드가 있는 경우에 인용부를 생략하면 파일명의 경로를 표시하게 된다.
경로명 표시는 와일드카드에 일치하는 파일이 있는 경우만 이루어 지고 의도하지 않는 에러를 많이 발생시키므로 되도록 사용하지 않는다.
touch HelloWorld.txt
message="Hello*"
echo "$message"
echo $message
rm HelloWorld.txt
echo $message
[root@linuxtest kim]# ./t1.sh
Hello*
HelloWorld.txt
Hello*
변수명은 항상 {} 로 감싸도록 한다
" " 큰따옴표는 작은따옴표를 감쌀수 있다. 특수문자는 \ 로 표현하면 된다
' ' 작은따옴표로 감싼 부분은 그대로 표현된다
작은따옴표는 작은따옴표를 감쌀수 없다.
echo 'Hello '\''World' \' #여기 씌여진 인용부호는 모두 ' 이다
Hello 'World '
'IT' 카테고리의 다른 글
0278. sh ksh [[ ]] 조건식 문자열 수치 비교 (0) | 2016.01.28 |
---|---|
0277. bash 조건판단 작성하는 법 (0) | 2016.01.28 |
0275. shell script 동작확인 (0) | 2016.01.28 |
0274.삭제문자 kill문자 인터럽트 문자 설정하기 (0) | 2016.01.28 |
0273. 터미널 이스케이프 스퀀스 (0) | 2016.01.28 |