다음과 같은 shell script 는 source test.zsh
를 zsh의 설정파일 .zshrc
의 마지막에 추가해줌.
echo "source test.zsh" >> ${ZDOTDIR:-$HOME}/.zshrc
여기서 ${환경변수}
는 환경변수
의 이름의 environment variable의 값으로 대치되는 것임.
ZDOTDIR
은 zsh에서 사용되는 환경변수 중 하나로서 zsh의 configuration files 이 있는 directory의 path를 가짐.
ZDOTDIR
에 있는 configuration files는 다음과 같음..zshrc
,.zshenv
,.zprofile
,.zlogin
임.- 설정되어 있지 않은 경우도 많음.
HOME
은 일반적으로 현재 사용자의 home directory의 path를 가지는 환경변수임.
/home/사용자_계정명
이 일반적인 형태임.
위의 주의할 점은 :-
operator임.
${ZDOTDIR:-$HOME}
은
${ZDOTDIR}
이 설정되어 있는 경우엔${ZDOTDIR:-$HOME}
이 해당 값으로 치환되고,${ZDOTDIR}
이 설정되어 있지 않은 경우엔:-
뒤에 있는$HOME
(=${HOME}
)의 값으로 치환됨.
:-
operator는 "colon-hypen" 또는 "colon-minus"라고 불리며
shell script에서 특정 변수의 값을 가져올 때,
설정되어 있지 않을 경우 기본값을 제공하기 위해 사용됨.
다음의 예를 살펴볼 것.
❯ echo $HOME
/Users/dsaint31
❯ echo ${ZDOTDIR:-$HOME}
/Users/dsaint31
❯ vi ~/.zshrc
❯ echo ${HOME:-test}
/Users/dsaint31
❯ echo ${HOME1:-test}
test
아래의 경우 HOME1은 정의되지 않은 환경변수이므로, 일반 텍스트 test로 출력되는 것을 확인할 수 있음.
'Linux' 카테고리의 다른 글
[Linux] sed vs. ed vs. vi : 텍스트 편집 도구 비교 (0) | 2024.05.11 |
---|---|
[linux] Gateway ip address 확인: Ubuntu (1) | 2024.02.06 |
[linux] cmd: disk usage and disk free: du and df (1) | 2024.01.24 |
[linux] cut 사용법 (1) | 2023.12.11 |
[Linux] tmux (Terminal MUltipleXer) 사용하기 (1) | 2023.11.19 |