[Linux Tip] Bash shell script 에서 외따옴표와 쌍따옴표의 비밀 개발 이것저것

자, 여러분 퀴즈입니다.
아래 스크립트의 실행 결과를 예측해주세요

------------------------------------------
DIR_PATH="/home/deploy/scripts"

# 쌍따옴표
FILE_PATH_1="${DIR_PATH}/my.sh"

# 외따옴표 사용
FILE_PATH_2='${DIR_PATH}/my.sh'

# 1번 프린트문
echo ${FILE_PATH_1}

# 2번 프린트문
echo ${FILE_PATH_2}
------------------------------------------

자, 예측이 끝났으면...
리눅스 OS를 지금 바로 사용가능하신 분들은 저 코드를 복사해서 실행해 봅시다.
chmod 755 로.. 실행권한 주는건.. 굳이 말 안해도 되겟죠..?

여튼... 저걸 돌리면 아래와 같이 나옵니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
/home/deploy/scripts/my.sh
${DIR_PATH}/my.sh
.
.
.
정답을 맞추셧나요?? ㅎㅎㅎ
즉, !! 정리하자면 아래와 같습니다.

외따옴표를 사용한 문자열은 그 안의 내용을 고대~~~로 하나의 String 으로 인식한다.

쌍따옴표를 사용한 문자열은 그 안에 존재하는 변수들을 다 참조하여 하나의 String 으로 만든다.

가끔 스크립트를 짜다가 저런 사소한 실수로 인해 변수를 섞은 문자열을 잘못 선언하여 오류를 양산할때가 있습니다.
저도 그랬고요... 여튼!! 도움이 되셧길 바랍니다 ^^


덧글

  • 2017/01/18 03:21 # 비공개

    비공개 덧글입니다.
※ 로그인 사용자만 덧글을 남길 수 있습니다.


통계 위젯 (블랙)

11221
1191
243254

GoogleAdsenseResponsive

Cluster map