리눅스에서의 특수문자는 여러 기능들을 지원하고 있습니다.
지난 포스팅에서의 다중 명령어 또한 특수문자에 포함됩니다.
이번 포스팅에서는 특수문자 중 기본적이고, 자주 사용되는 특수문자에 대해서 알아보겠습니다.
특수문자 *
특수문자 *은 문자열 와일드카드라고 하며, 임의의 문자열을 표현하는 특수문자입니다.
아래 예시처럼 특정한 확장자나 이름을 찾는 등 여러 가지 상황에서 사용할 수 있습니다.
[root@localhost back]# ls 1.txt 2.txt cp.exe cp.jpg file [root@localhost back]# ls *.txt 1.txt 2.txt [root@localhost back]# ls cp.* cp.exe cp.jpg [root@localhost back]# |
이 뿐 아니라, 아래처럼 특정 문자가 들어간 파일을 찾는 데에도 사용할 수 있습니다.
[root@localhost back]# ls *l* file [root@localhost back]# |
특수문자 ?
특수문자 ?는 *과 달리 하나의 문자를 표현하는 특수문자입니다.
아래 예시처럼 특수문자 ?는 문자열이 아닌 하나의 모든 문자만을 표현해주기 때문에 특정 문자가 들어간 파일을 찾거나, 특정 길이의 파일명을 찾을 때 사용할 수 있습니다.
[root@localhost back]# ls 1.txt 2.txt cp.exe cp.jpg file [root@localhost back]# ls fi? ls: cannot access fi?: 그런 파일이나 디렉터리가 없습니다 [root@localhost back]# ls fi?? file [root@localhost back]# ls ????? 1.txt 2.txt |
특수문자 [ ]
특수문자 [ ]는 ?와 마찬가지로 하나의 문자를 나타내는 데 사용합니다.
하지만 아래 예시처럼 [ ]는 범위를 지정하여 사용할 수도 있습니다.
[root@localhost back]# ls 1.txt 2.txt 3.txt cp.exe cp.jpg file [root@localhost back]# ls [1].txt 1.txt [root@localhost back]# ls [1-2].txt 1.txt 2.txt [root@localhost back]# |
특수문자 <, <<, >, >>
이 특수문자들은 입출력 리다이렉션이라고 합니다. 즉, 입출력의 방향을 바꿔주는 특수문자들입니다.
주로 아래 예시처럼 다른 명령어와 조합하여 파일의 내용을 수정 혹은 추가할 때 사용할 수 있습니다.
[root@localhost back]# cat 1.txt ABC [root@localhost back]# echo hello > 1.txt [root@localhost back]# cat 1.txt hello [root@localhost back]# echo world! >> 1.txt [root@localhost back]# cat 1.txt hello world! [root@localhost back]# |
[root@localhost back]# cat 1.txt ABC [root@localhost back]# cat > 1.txt hello ^C [root@localhost back]# cat 1.txt hello [root@localhost back]# cat >> 1.txt world! ^C [root@localhost back]# cat 1.txt hello world! [root@localhost back]# |
특수문자 ₩(\)
특수문자 \는 특수 문자를 일반 문자로 처리할 때 사용합니다. (폰트에 따라 역슬래시나 원표시가 바뀝니다.)
아래 예시처럼 특수문자의 바로 앞에 \을 사용하면 특수문자 대신 일반 문자로 인식하는 것을 확인할 수 있습니다.
[root@localhost back]# ls *?*.txt 1.txt 2.txt 3.txt cp.exe cp.jpg file [root@localhost back]# ls *?*.txt *?*.txt 1.txt 2.txt 3.txt [root@localhost back]# ls \*?*.txt *?*.txt [root@localhost back]# |
특수문자 ' ' 와 " "
‘ ’와 “ ” 는 문자열로 만들어주는 기능을 합니다. 이 뿐 아니라 \처럼 문자열 안에 사용된 특수문자를 일반 문자로 처리할 수 있습니다.
[root@localhost back]# ls *?*.txt 1.txt 2.txt 3.txt cp.exe cp.jpg file [root@localhost back]# ls *?*.txt *?*.txt 1.txt 2.txt 3.txt [root@localhost back]# ls \*?*.txt *?*.txt [root@localhost back]# ls '*?*'.txt *?*.txt [root@localhost back]# ls "*?*".txt *?*.txt [root@localhost back]# |
이 두 특수 문자는 ‘ ’은 모든 특수 문자를, “ ”은 $와 \을 제외한 모든 특수 문자를 일반 문자로 처리하는 데 차이점이 있습니다.
특수문자 ~
특수문자 ~는 홈 디렉터리를 나타내는 특수 문자입니다.
cd ~을 사용하면 현재 로그인되어있는 계정의 홈 디렉터리로, cd ~test(계정)을 사용하면 test(계정)의 홈 디렉터리로 이동하는 것을 확인할 수 있습니다.
[root@localhost /]# cd ~ [root@localhost ~]# pwd /root [root@localhost ~]# cd ~test [root@localhost test]# pwd /home/test [root@localhost test]# |
특수문자 -
특수문자 – 는 명령어에 옵션을 주는 특수문자이기도 하지만, 이전 디렉터리를 나타내는 특수문자입니다.
( . 은 현재 디렉터리, .. 은 상위 디렉터리를 의미합니다. )
아래 예시처럼 무조건 상위 디렉터리로 이동하는 cd ..과 다르게
cd –를 사용하면 직전에 위치하던 / 디렉터리로 이동하는 것을 확인할 수 있습니다.
[root@localhost /]# cd /home/test [root@localhost test]# cd - / [root@localhost /]# cd /home/test [root@localhost test]# cd .. [root@localhost home]# cd . [root@localhost home]# |
'[Linux] 리눅스(CentOS7)' 카테고리의 다른 글
[Linux] 리눅스 alias 사용법 및 예제 (0) | 2022.02.28 |
---|---|
[Linux] 리눅스 vi 편집기 사용법 (2) | 2022.02.27 |
[Linux] 리눅스의 다중 명령어 및 사용법 (0) | 2022.02.25 |
[Linux] 리눅스 기본 사용법 및 명령어_3 (0) | 2022.02.24 |
[Linux] 리눅스 기본 사용법 및 명령어_2 (0) | 2022.02.23 |