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