네이버클라우드 캠프 | BE/Linux 기초
[Linux/Ubuntu] Divide and Conquer : Pipe, Redirect
three kim
2023. 4. 26. 15:40
728x90
리눅스에서 작업을 하다 보면, 여러 개의 명령어를 조합해야 할 때가 많습니다.
이번 글에서는 명령어를 조합하는 파이프(Pipe), 리다이렉트(Redirect), 두 가지 기능에 대해 간단히 알아보겠습니다.
1. 파이프 (Pipe)
파이프는 리눅스에서 명령어를 조합하는 가장 기본적인 방법 중 하나입니다.
파이프는 앞선 명령어의 결과를 다음 명령어로 전달하며, 두 명령어를 조합하는 역할을 합니다.
(두 개만 조합한다는 의미가 아니라, 앞 뒤 명령어를 조합한다는 의미입니다!)
종류 | 설명 |
ps -ef | grep pts/(n) | pts 번호가 n인 사용자의 PID 번호 확인 가능 |
ls -al | grep a | 현재 디렉터리의 파일 중 이름에 a가 포함된 파일 출력 |
ls -al | more | 현재 디렉터리의 파일 목록을 한 페이지 단위로 출 |
2. 리다이렉트 (Redirect)
리다이렉트는 출력을 파일로 저장하거나 파일을 입력으로 사용하는 것과 같이 입출력을 파일로 변경하는 기능입니다.
# 출력 결과를 파일로 저장
command > file_name
# 기존 파일에 이어서 새로운 결과 추가 및 저장
command >> file_name
# 파일을 입력으로 사용
command < file_name
# 파일을 입력으로 사용 (명령즐에서 파일 내용을 직접 작성하여 입력으로 전달 가능)
command << file_name
2-1. > 예시
> |
|
종류 | 설명 |
ps -ef > ps.list | 시스템의 모든 프로세스 정보를 ps.list 파일에 저장 (홈 디렉터리에 w 권한 필요) |
ps -ef | grep ubuntu > ps_ubuntu.list | 이름에 ubuntu라는 단어가 포함된 프로세스를 ps_ubuntu.list 파일에 저장 |
cat > test.txt this is test. (Ctrl + D) |
test.txt 파일 생성 |
파일 내용 입력 | |
파일 내용 입력 후, Ctrl + D (저장) |
파이프 사용 | ps -ef | grep ubuntu > result.list |
파이프 없이 1 | ps -ef > temp.list |
grep ubuntu temp.list > result.list | |
파이프 없이 2 | ps -ef > temp.list |
grep ubuntu < temp.list > result.list |
마무리
이번 블로그 글에서는 파이프와 리다이렉트에 대해 간단히 알아보았습니다.
관련 내용 중 극히 일부를 다룬 것이니, 꾸준히 내용을 추가하도록 하겠습니다.
간단히 참고 부탁드리며... 감사합니다 :)