[Linux] 리눅스 사용자를 위한 cat 명령어의 사용법 (주요 사용 용도 : 파일 내용 확인, 파일 합치기)

정보

  • 업무명     : 리눅스에서 cat 명령어를 사용하는 기초적인 방법 정리

  • 작성자     : 박진만

  • 작성일     : 2020-03-14

  • 설   명      :

  • 수정이력 :

 

 내용

[특징]

  • 리눅스에서 cat 명령어 사용방법 소개

 

[활용 자료]

  • 없음

 

[자료 처리 방안 및 활용 분석 기법]

  • 없음

 

[사용법]

  • 작업 환경 구축

  • 소스 코드 작성 및 실행

  • 실행 결과 확인

 

[사용 OS]

  • Linux (CentOS v7.0)

  • VMware Workstation Pro v15.5

 

[사용 언어]

  • Bash Script

 

 소스 코드

[들어가기]

  • cat은 파일 또는 표준 입력의 내용을 그대로 표준 출력에 출력하는 명령이다.

  • 보통 파일의 내용을 확인하기 위하여 자주 사용하거나 또는 여러 파일을 지정하여 여러 파일을 연결하는 데 사용한다.

  • 기본적인 출력 이외에도 첫 행만 출력하려면 head 명령을, 마지막 부분 만 출력하려면 tail명령을 사용할 수 있다.

 

[옵션에 대한 설명]

  • 아래와 같은 txt 파일이 있다고 가정하자 (1.txt)

1 2 3
4 5 6
7 8 9


a	b	c
d	e	f	
g	h	i
옵션 설명 명령어
-A -vET 와 동일한 옵션 (하단참조) cat -A 1.txt
-b 행 번호를 추가하여 출력 (빈 행 제외) cat -b 1.txt
-E 각 줄에 $를 추가하여 출력 cat -E 1.txt
-n 행 번호를 추가하여 출력 (빈 행 포함) cat -n 1.txt
-s 연속된 빈 행을 하나로 하여 출력 cat -s 1.txt
-T Tab 을 "^I" 로 변환하여 출력 cat -T 1.txt
--help 도움말 표시 cat --help
--version 버전 표시 cat --version

 

  • 디폴트 출력 결과 (cat 1.txt) : 그대로 출력

1 2 3
4 5 6
7 8 9


a	b	c
d	e	f	
g	h	i

 

  • -A 옵션 출력 결과 (cat -A 1.txt) : -vET 와 동일한 옵션

1 2 3$
4 5 6$
7 8 9$
$
$
a^Ib^Ic$
d^Ie^If^I$
g^Ih^Ii$

 

  • -b 옵션 출력 결과 (cat -b 1.txt) : 빈 행 제외 행번호 출력

     1	1 2 3
     2	4 5 6
     3	7 8 9


     4	a	b	c
     5	d	e	f	
     6	g	h	i

 

  • -E 옵션 출력 결과 (cat -E 1.txt) : 각 줄에 $를 추가하여 출력

1 2 3$
4 5 6$
7 8 9$
$
$
a	b	c$
d	e	f$
g	h	i$

 

  • -n 옵션 출력 결과 (cat -n 1.txt) : 빈 행 포함 행번호 출력

     1	1 2 3
     2	4 5 6
     3	7 8 9
     4	
     5	
     6	a	b	c
     7	d	e	f	
     8	g	h	i

 

  • -s 옵션 출력 결과 (cat -s 1.txt) : 연속된 빈 행을 하나로 하여 출력

1 2 3
4 5 6
7 8 9

a	b	c
d	e	f	
g	h	i

 

  • -T 옵션 출력 결과 (cat -T 1.txt) : tab을 ^I로 표현하여 출력

1 2 3
4 5 6
7 8 9


a^Ib^Ic
d^Ie^If^I
g^Ih^Ii

 

[사용법 예시]

  • cat 을 이용하여 파일을 만들고 내가 입력한 내용을 해당 파일에 쓰기

    • 2.txt 파일을 만들어서 아래와 같은 내용을 쓰고 싶다고 가정하자

1 2 3
4 5 6
7 8 9
  • 이 경우 아래와 같은 명령어를 입력하면 된다.

cat > 2.txt # 왼쪽과 같이 명령어를 쓰면 하단 입력 공백이 나타남
1 2 3 
4 5 6
7 8 9
# (ctrl+D) 를 눌러 입력 종료

 

  • 결과적으로 2.txt 파일이 생성되었다.

 

  • 여러 파일을 연결하여 합치기

    • a.txt / b.txt / c.txt 를 연결하여 result.txt를 만든다고 가정하자

    • 각 txt 파일의 내용은 아래와 같다.

# a.txt
1 2
3 4

# b.txt
1 2 3
4 5 6
7 8 9 

# c.txt
a b c d
e f g h
i j k l
  • 파일을 연결하기 위해서는 아래와 같이 사용하면 된다.

cat a.txt b.txt c.txt > result.txt
  • 결과적으로 아래와 같이 파일이 합쳐진다.

1 2
3 4
1 2 3
4 5 6
7 8 9
a b c d
e f g h
i j k l

 

  • 디렉토리 내부 파일 내용 간단히 보기

    • 디렉토리 내부에 서브 디렉토리가 없다고 한다면

ls ./* | awk '{print "echo " $1 "; cat -n " $1}' | sh | less
  • 아래 처럼 파일의 내용 조회 가능함

 

 참고 문헌

[논문]

  • 없음

[보고서]

  • 없음

[URL]

  • 없음

 

 문의사항

[기상학/프로그래밍 언어]

  • sangho.lee.1990@gmail.com

[해양학/천문학/빅데이터]

  • saimang0804@gmail.com

 

 

 

 

본 블로그는 파트너스 활동을 통해 일정액의 수수료를 제공받을 수 있음