본문 바로가기
  • 실행력이 모든걸 결정한다
Linux

[Linux] cat의 여러 용도 / grep

by 김코더 김주역 2021. 3. 16.
반응형

cat과 grep도 자주 쓰이는 리눅스 명령어 리스트의 단골 손님들이다.

무슨 역할을 하는 명령어인지 살펴보자.

 

1. cat

cat 명령어는 concatenate의 축약어로, 두 파일의 내용을 합치기 위한 용도로 만들어졌지만 그 외에도 많은 용도가 있다.

새 파일을 만들거나 터미널에 파일 내용을 출력할 때에도 쓰이며, 출력 결과를 다른 명령어와 연계해서 이용할 수도 있다.

이러한 용도들에 대해 간단히 설명하고자 한다.

 

1) 새 파일 생성

cat > [생성할 파일명]
(내용 입력 후 Ctrl+d로 저장)

 

예시

 

 

2) 파일 내용 추가

> 는 기존의 내용은 지워지고 새로운 내용이 들어가지만, >> 는 기존의 내용에 새로운 내용이 추가된다.

cat >> [편집할 파일명]
(추가할 내용 입력 후 Ctrl+d로 저장)

 

예시

 

 

1)과 2)를 순차적으로 수행하고 jooyeok파일을 확인했더니 두 줄이 잘 입력되었다.

 

 

3) 파일 내용 출력

한 파일 뿐만 아니라, cat 명령어 뒤에 여러 파일을 띄어쓰기를 경계로 나열하여 여러 파일 내용을 합쳐 출력할 수도 있다.

cat [파일명] ...

 

예시

 

 

4) 여러 파일 내용을 합쳐서 저장

예시

 

여러 파일을 합치지 않고 다른 이름으로 저장할 수도 있다.

예시

 

 

5) |(pipe) 를 이용한 연계

예시

ls -l 명령어에 대한 실행 결과를 filelist 파일에 저장(파일은 자동으로 생성됨)

 

 

2. grep

grep 명령어는 파일의 내용에서 특정 문자열을 찾을 때 쓰인다.

문자열을 찾았다면 그 문자열이 들어간 전체 줄을 반환한다.

단순 문자열 비교가 아닌 정규 표현식 패턴으로 찾을 수도 있다.

grep [옵션] [패턴] [파일명]

※ -v 옵션은 찾은 문자열이 속하지 않는 줄들을 모두 반환한다.

 

예시1

grep "lamb" * 은 linux_test 디렉토리에 있는 모든 파일(*)을 대상으로 "lamb"라는 문자열을 찾는 명령어이다.

찾는 문자열이 포함된 파일과, 모든 줄이 잘 반환되었다. 

 

예시2

|(pipe)를 이용하여 도움말과도 연계할 수 있다.

ls -al 명령어에 대한 출력 결과에서, lamb+2~9사이의 숫자로 조합된 문자열이 속하는 모든 줄을 반환한다. 그래서 lamb1 파일은 표시되지 않았다.

"lamb[2-9]"가 정규 표현식 패턴에 해당한다.

 

 

grep의 여러 옵션들과 정규식 패턴들을 잘 설명해놓은 다른 블로그글을 첨부했으니 참고하면 좋을 것 같다.

recipes4dev.tistory.com/157 

 

리눅스 grep 명령어 사용법. (Linux grep command) - 리눅스 문자열 검색

1. grep 명령어. grep은 입력으로 전달된 파일의 내용에서 특정 문자열을 찾고자할 때 사용하는 명령어입니다. 리눅스에서 가장 많이 사용되는 명령어 중 하나이죠. 하지만 grep 명령어가 문자열을

recipes4dev.tistory.com

 

반응형

댓글