grep은 어떠한 정보 안에서 사용자가 필요로하는 정보가 포함되어있는 줄을 찾는 명령어이다. 예를들어 linux.txt라는 파일에 수백줄의 정보가 입력되어있다고 하자. 모든 정보를 전부 출력하고 싶으면 cat linux.txt를 입력하면 되지만(cat 명령어는 파일의 내용을 전부 터미널 화면에 출력해줌) 위에서 얘기한 것처럼 우리가 원하는 정보가 linux이고 linux.txt의 내용 중에서 linux가 들어간 줄만 출력하고 싶으면 grep linux linux.txt를 입력해서 linux가 포함된 줄만을 출력할 수 있다. 여기서 grep의 문법은 grep (원하는 정보) (파일) 이다.
파이프라인이란 어떠한 명령어를 실행한 결과값을 다음 실행할 명령어의 입력값으로 주고 또 그 결과값을 다음 실행할 명령어의 결과값으로 주는 것처럼 앞의 명령어의 결과가 다음 명령어의 실행에 영향을 주는 구조를 나타낸다. 이를 잘 이용하면 여러개의 명령어를 CLI 내에서 한줄로 구현이 가능하다.
만약 ls --help를 입력하면 나오는 정보중에 sort에 관한 줄을 찾고싶으면 ls --help로 출력되는 결과값을 grep sort (입력값)의 입력값으로 넣어줘야한다. 이때 ls --help와 grep sort를 파이프로 연결해주면 간단히 한줄로 구현이 가능하다. 파이프는 키보드 내에서 |이고 |를 이용하여 앞의 두 명령어를 파이프 연결해주면 ls --help | grep sort가 된다. 파이프 연결해준 이 명령어를 터미널에 입력하면 | 이전 내용인 ls -help의 결과값을 | 이후 내용인 grep sort의 입력값으로 넣어주고 그 결과값을 출력해준다. 그리고 해당 결과값에서 다시한번 grep을 해주고 싶으면 |로 계속 이어주면 된다.
reference. https://opentutorials.org/course/2598/14190
42 Seoul 대비 리눅스 공부 (생활코딩 - IO Redirection) (0) | 2023.01.26 |
---|---|
42 Seoul 대비 리눅스 공부 (생활코딩 - 파일 다운로드 방법) (0) | 2023.01.25 |
42 Seoul 대비 리눅스 공부 (생활코딩 - 패키지 매니저) (0) | 2023.01.25 |
42 Seoul 대비 리눅스 공부 (생활코딩 - sudo, nano 에디터로 파일 편집하기) (0) | 2023.01.25 |
42 Seoul 대비 리눅스 공부 (생활코딩 - 필요한 명령 검색하기, cp, mv) (0) | 2023.01.25 |