백슬래쉬

쉘에서의 큰따옴표와 작은따옴표(인용부호, Quoting) 그리고 백슬래쉬(Baskslash)

쉘에서의 큰따옴표와 작은따옴표(인용부호, Quoting) 그리고 백슬래쉬(Baskslash)

쉘에서 사용되는 세가지 인용법에 대하여 알아보자.

SHELL에서 인용(Quoting) 이란?

쉘에서 인용(Quoting) 은 특정 문자나 단어가 가지는 특별한 의미(또는 기능)를 제거 하는데 사용된다. 예를 들어 빈칸(white space) 은 쉘에서 인자를 구분하는데 쓰이지만 Quoting빈칸(<whitespace>) 매개변수를 구분하는 기능이 무시된다.

쉘에서 Quoting 메커니즘은 세가지가 있다.

  • 이스케이프 문자(Escape Character): Hello\ World
  • 작은따옴표(Single Quotes, '): 'Hello World'
  • 큰따옴표(Double Quotes, "): "Hello World"

Hello\ World, 'Hello World' "Hello World" 이 세가지 모두 하나의 매개변수로 취급 한다.

쉘에서 아래 명령을 실행해 보자. 다음 명령은 매개변수의 갯수를 나타내는 변수 $# 를 출력한다.

sh -c 'echo $#' Hello World
sh -c 'echo $#' Hello\ World
sh -c 'echo $#' 'Hello World'
sh -c 'echo $#' "Hello World"

결과를 보자.

$ sh -c 'echo $#' echo Hello World
1
$ sh -c 'echo $#' echo Hello\ World
0
$ sh -c 'echo $#' echo 'Hello World'
0
$ sh -c 'echo $#' echo "Hello World"
0