본문 바로가기
Linux

[Linux] 파일 내용확인하기: cat, bat, less, more, head, tail

by ds31x 2023. 9. 30.

cat, bat, head, tail

대표적인 text processing utilities로 file viewing commands라고도 불림.

less, more

pager라고 불리는 utilities로 긴 출력을 화면에 페이지 단위로 나누어 보여주는 역할을 수행함.

cat, bat

cat (concatenate)은 가장 간단하게 파일 내용을 확인할 수 있게 해준다.

stdout
파일의 내용을 출력해주는 역할을 한다.

 

batcat을 보다 개선한 프로그램이다. 행번호 출력 및 페이지에 맞춰 출력을 해주고 highlighting과 git연동도 된다.

batcat과 거의 비슷하게 동작한다.


한 파일을 출력

cat file.txt
  • 만약 파일 이름 대신 - 문자를 사용하면, stdin(표준 입력,standard input)을 통해 입력된 내용을 출력함.
  • stdin으로부터 입력을 완료하기 위해서는 Ctrl+d (EOF)를 입력하면 됩니다.

stdin으로 입력받아 파일저장.

cat > new_file.txt
cat - > new_file.txt

복수의 파일을 연속으로 출력

cat file0.txt file1.txt file2.txt

복수의 파일을 병합(merge)

cat file0.txt file1.txt > m_file.txt

위의 경우 redirection >을 통해 stdout 대신 m_file.txt 로 출력하므로 파일에 기재함 (append로 동작시키려면 >> 을 사용).


참고 : Options

-n : 모든 line 앞에 line number 출력. (empty line 포함)
-b : empty line 외의 line에만 번호 출력.
-E : line의 마지막에 $ symbol 출력. (empty line은 $ 기호만 출력)
-T : Tab 문자를 ^I로 바꿔서 출력.
-s : 두개의 empty line 출력 안함.
-v : Tab(탭)과 linefeed(줄바꿈)을 제외한 non-printing 문자를 ^, M-로 출력.
-e : -vE와 결과 같음.
-t : -vT와 결과 같음.
-A : -vET와 같음.

https://recipes4dev.tistory.com/177

 

리눅스 cat 명령어 사용법. (Linux cat command) - 리눅스 파일 내용 출력.

1. 리눅스 파일 출력. 리눅스에서, 텍스트 파일(File)의 내용을 화면에 출력하는 방법 중 가장 쉽고 간단한 방법을 선택하라고 한다면, 어떤 명령를 가장 먼저 떠올리게 될까요? 아마 십중팔구 cat

recipes4dev.tistory.com

https://inpa.tistory.com/entry/Modern-Linux-%F0%9F%90%A7-bat-%EB%AA%85%EB%A0%B9%EC%96%B4-%EC%82%AC%EC%9A%A9%EB%B2%95-cat-%EB%8C%80%EC%8B%A0-%EC%9D%B4%EA%B1%B0-%EC%93%B0%EC%9E%90

 

🐧 bat 명령어 사용법 (cat 대신 이거 쓰자)

bat (최신식 cat) 파일의 내용물을 표시할때 cat 명령어를 자주 쓸 것이다. 하지만 무미건조한 텍스트만 나열만 해 가독성이나 효율성이 좋지 않다. 최신식 명령어인 bat 은 cat 대신 사용할 수 있는

inpa.tistory.com


less

대표적인 pager로서 more 와 비슷하지만 less가 보다 많은 기능을 지원함.

 

한 페이지에 맞춰 출력시켜주며,

화살표 위아래 키로 스크롤시키거나

  • f 키로 다음 페이지를 넘기거나 (한 화면 아래로. forward)
  • b 키로 이전 페이지로 넘기거나 (한 화면 위로. backward)
  • q 키로 종료시킴

vim과 비슷한 조작으로 파일의 내용을 살펴볼 수 있음.

참고로, man도 less를 이용하고 있음.


pipe | 를 통해 stdout (표준출력)에 나오는 내용을 보다 자세히 살펴봐야하는 경우 많이 이용됨.

ls -al | less
  • 위의 예는 현재 디렉토리의 내용들을 보다 편하게 보기위해 사용한 예임.

more 는 아주 오래전부터 사용되던 것이라 less 를 이용하는게 나음.


head, tail

파일의 앞부분 (head)이나 뒤부분 (tail)의 특정 line만을 stdout에 출력해줌.

 

특히 tail의 경우, -F 옵션을 주고 사용할 경우 실시간으로 log의 내용을 살필 때 많이 사용된다.

  • -n : 보여줄 line 의 수를 지정하는 옵션

더 읽어보면 좋은 자료들

https://jongmin92.github.io/categories/Programming/Linux-Ubuntu/

 

92Hz

 

jongmin92.github.io