본문 바로가기
Linux

[Linux] 쉘 명령의 특수문자, 입출력 리다이렉션

by worldcenter 2025. 4. 30.

 

쉘에서 사용되는 특수 문자

문자 의미
화이트스페이스 ENTER는 명령 행을 종료하고 명령을 실행시킴
SPACEBAR와 TAB은 명령 행을 구성하는 요소를 분리
인용부호 작은 따옴표(' ')와 큰 따옴표(" ")는 공백을 포함하는 문자열을 일반 문자로 처리
역따옴표(` `)는 '명령 치환' 기능을 수행
백슬래시(\) 특수 문자 앞에 붙어 특수 문자의 기능을 제거하는 이스케이프(escape) 문자
alias된 명령 앞에 붙으면 alias를 없애줌
틸드(~) ~ 또는 ~username은 사용자의 홈 디렉터리를 의미
도트(.) 현재 작업 디렉터리
더블도트(..) 현재 디렉터리의 부모 디렉터리
파운드(#) 주석
달러($) $변수 로 변수의 값을 출력
앰퍼샌드(&) 명령& 은 명령을 백그라운드로 실행
애스터리스트(*) 0개 이상의 임의 문자열
물음표(?) 1개 문자와 대응
세미콜론(;) 여러 명령을 실행할 때 구분을 위해 사용
파이프(|) 왼쪽 명령의 출력을 오른쪽 명령의 입력으로 연결
< 또는 > 입출력 리다이렉션, 파일로부터 입력 받을 때 또는 파일로 출력할 때 사용
>> 표준 출력을 파일의 끝에 덧붙일 때 사용
[] 파일 이름을 지정할 때 대응되는 문자의 범위를 지정
ex) [0-9]는 숫자 중 1개, [abc]는 a,b 또는 c 문자 중 1개
{} 파일 이름을 지정할 때 대응되는 문자의 범위를 지정(공백 없이 콤마로 구분)
ex) echo {apple,banana,cherry} -> 출력: apple banana cherry

 

 

파이프와 입출력 리다이렉션

문자 의미
command > file 표준출력(1)을 지정된 파일로 보냄
command 2> file 표준오류(2) 출력을 지정된 파일로 보냄
command > file 2>&1 표준출력과 표준오류 출력을 지정된 파일로 보냄
command < file 지정된 파일을 표준입력으로 지정하여 읽음
command < file.in > file.out file.in을 표준입력으로 읽고 표준 출력을 file.out으로 보냄
command >> file 표준출력을 지정된 파일에 추가
command 2>> file 표준오류 출력을 지정된 파일에 추가
command >> file 2>&1 표준출력과 표준오류 출력을 지정된 파일에 추가
 command << word 지정된 문자가 나올 때까지 키보드로부터 표준입력을 읽음
command1 | command2 앞 명령의 결과의 표준출력을 뒤 명령으로 연결
command1 2>&1 | command2 앞 명령의 결과에서 표준출력과 표준오류 출력을 뒤 명령으로 연결