quotes ""
- quotes ""는 한번 사용 시, 적용되는 것임

$ message="Hello*"
$ echo "$message"
Hello*
$ echo $message
Hellowrold.txt
VAR="/home/*/*/cache"
$ VAR="/home/*/*/cache"
$ echo $VAR --> echo /home/*/*/cache 가 적용됨
/home/user1/a/cache /home/user2/a/cache /home/user3/b/cache
$ echo "$VAR"
/home/*/*/cache --> 문자열 그대로 출력됨
'Hello "World"'
echo 'Hello "World"'
Hello "World"
"Hello 'World'"
echo "Hello 'World'"
Hello 'World'
"Hello \"World\"": " 안에 "
- Quote
" ... "는 내부에 \" 방식을 사용하면 된다.
echo "Hello \"World\""
Hello "World"
'Hello '\''World'\': ' 안에 '
- Quote
' ... ' 는 내부에 \' 방식으로 사용할 수 없다.
따라서, ' ... '\' 처럼 ' ... ' 문장을 끝내고 뒤에 \'를 사용하는 방식을 쓴다.
echo 'Hello '\''World'\'
Hello 'World'
ssh cmd
CMD="'ssh -p 8080' user@hostname:/path/path2"
rsync -a src/ -e "${CMD}"
'!': history expansion
!는 history expansion
- 명령어에
!가 있다면 원하지 않는 방식으로 명령이 실행될 것이다.
- 예:
./login -u pll!mark
- 원하는 동작:
pll!mark로 로그인하기
- 실제 동작:
./login -u pll ; ! mark -> ! mark event not found
- 해결책
'!command' 로 single quote' ' 사용
set +H && !command && set -H: History 셋을 임시로 사용 안함
echo !command
event not found: command
set +H
echo !command
set -H