반응형
728x170
이전 글에서 말하다 말았던 escape character에 대해서 더 알아보자
Shell에서 특수문자, 예약된 문자를 쓰고 싶지만 예약되었기 때문에 쓰지 못하는 문자가 있을 수 있다.
그렇다면 escape 문자를 사용함으로써 쓸 수 있다.
예를 들면 “ 같은 쌍따옴표를 쓰고 싶다면 escape를 꼭 써야만 한다.
아래 예시는 다르게 출력된다.
$ echo Hello World
Hello World
$ echo "Hello World"
Hello World
하지만 따옴표는 출력되지 않는다.
이렇게 Hello "World"따옴표를 출력하고 싶다면 어떻게 해야할까?
이렇게 하면 될까?
$ echo "Hello \"World\""
따옴표가 다행히 잘 나왔다.
그렇다면 * 는 어떻게 쓸 수 있을까?
wildcard로 예약되어있는데 말이다?
$ echo *
case.shtml escape.shtml first.shtml
functions.shtml hints.shtml index.shtml
ip-primer.txt raid1+0.txt
$ echo *txt
ip-primer.txt raid1+0.txt
$ echo "*"
*
$ echo "*txt"
*txt
예시에서 각 쓰인 *마다 wildcard 인지 asterisk인지 다르다.
역시 *, asterisk을 쓰는 방법은 “”를 써서 사용한다.
그렇다면 $ 이나 ` 그리고 \(backslash) character는 어떻게 쓸까?
앞에서 backslash를 escape character로 썼는데
backslash 자체는 어떻게 쓸까?
아래 예시를 참고하자
백슬래시와 따옴표
$ echo "A quote is \", backslash is \\, backtick is \`."
A quote is ", backslash is \, backtick is `.
$ echo "A few spaces are and dollar is \$. \$X is ${X}."
A few spaces are and dollar is $. $X is 5.
728x90
반응형
그리드형
'DevOps > Shell' 카테고리의 다른 글
Shell Script - 6, Test (0) | 2022.11.24 |
---|---|
Shell Script - 5, Loop (0) | 2022.11.23 |
Shell Script - 3, Wildcard (0) | 2022.11.23 |
Shell script 11, Tip (0) | 2022.11.22 |
Shell Script - 2, Variable(1) (0) | 2022.11.21 |