728x90
반응형
파이프라인
표준 입력으로부터 데이터를 읽고, 표준 출력으로 데이터를 전송하는 명령어의 능력은 파이프라인이라고 하는 쉘의 기능으로 보다 더 응용될 수 있다. 파이프 연산자인 |(수직바) 기호를 사용하여 명령어의 표준 출력을 또 다른 명령어의 표준 입력과 연결이 가능하다.
$ command1 | command2
$ ls -l /usr/bin | less
필터
파이프라인은 데이터의 복잡한 연산을 수행할 때 사용되는데, 하나의 파이프라인에 여러 명령어를 입력하는 것이 가능하다. 주로 이러한 방식을 사용하는 명령어들을 필터라 일컫는다. 필터는 입력 받은 내용을 어떻게든 바꾸어 출력하게 한다.
$ cat /etc/passwd | sort | less
-> passwd 파일의 내용을 정렬해서 보여준다.
sort - 텍스트 라인 정렬하기
uniq - 중복줄 제거 및 표시
uniq명령어는 sort와 연결하여 사용한다. uniq 명령어는 표준 입력이나 하나의 파일명 인자로부터 정렬된 데이터 목록을 입력받아 중복을 제거해준다.
$ ls /bin /usr/bin | sort | uniq | less
-> /bin, /usr/bin 디렉토리에서 보이는 동일한 파일이름을 제거하여 출력
- uniq -c : 중복된 수를 카운팅해서 보여줌
- uniq -d : 중복된 내용을 보여줌
grep - 패턴과 일치하는 라인 출력하기
tee - 표준 입력에서 데이터를 읽고, 표준 출력과 파일에 출력
tee프로그램은 표준 입력으로부터 데이터를 읽어서 표준 출력과 하나 이상의 다른 파일에 동시에 출력한다. 이는 작업이 진행되고 있을 때, 중간 지점의 파이프라인에 있는 내용을 알고 싶을 때 유용한다.
$ ls /usr/bin | tee ls.txt | grep zip
bunzip2
bzip2
bzip2recover
funzip
gunzip
gzip
unzip
unzipsfx
zip
zipcloak
zipdetails
zipdetails5.18
zipdetails5.28
zipdetails5.30
zipgrep
zipinfo
zipnote
zipsplit
파이프라인 내용에 grep 필터가 적용되기 전 디렉토리의 목록 전부를 ls.txt파일에 저장
ls.txt 파일에는 /usr/bin의 목록이 출력되어 있다.
728x90
반응형
'프로그래밍 노트 > Linux' 카테고리의 다른 글
[Linux] tar, gz 명령어 (0) | 2022.08.14 |
---|---|
curl 를 통해서 SSL 인증서 보기 (0) | 2020.03.03 |
리눅스 파일 검색(find) (0) | 2020.02.10 |
I/O 리다이렉션 (입출력 방향 지정) (0) | 2020.02.10 |
rsync 사용법[데이터 백업, 원격 전송] (0) | 2020.02.10 |