본문 바로가기

IT's Life/Linux

Linux cat 명령 : 파일을 연결하고 출력을 표준 출력 장치에 연결


cat 명령은 텍스트 파일의 내용을 표시하거나 (DOS의 type 명령과 유사) 여러 파일 내용을 다른 파일에 첨부하여 병합 된 파일을 결합하는 데 사용할 수 있습니다.

이 명령과 관련하여 어떤 사람들은 고양이 명령을 쓰는 사람이 고양이를 좋아하기 때문에 고양이라는 명령을한다고 생각합니다.

cat 명령의 기본 형식은 다음과 같습니다.

[root @ localhost ~] # cat [옵션] 파일 이름 

또는 

[root @ localhost ~] # cat 파일 1 파일 2> 파일 3

두 가지 형식에서 전자는 파일의 내용을 표시하는 데 사용되며, 일반적으로 사용되는 옵션과 각각의 의미는 표 1에 나와 있으며, 후자는 병합 된 파일을 연결하는 데 사용됩니다.


표 1 cat 명령의 일반적인 옵션 및 의미

옵션

의미 

 -A

숨겨진 기호를 모두 나열하는 -vET 옵션의 통합과 같습니다. 

 -E

각 줄의 끝에 캐리지 리턴 $를 나열하십시오. 

 -n

 출력의 모든 줄에 번호를 매기십시오.

 -b

 -n과 달리이 옵션은 비어 있지 않은 줄만 번호가 매겨 짐을 의미합니다.

 -T

탭 키를 표시하십시오 ^ I; 

 -V

특수 문자를 나열하십시오. 

 -s

연속 된 줄이 두 개 이상인 빈 줄이 있으면 빈 줄이 1 줄로 바뀝니다. 

cat 명령을 사용하여 파일 내용을 볼 때 파일 내용에 관계없이 한 번에 표시됩니다. 파일이 매우 크면 파일 시작 부분의 내용이 표시되지 않습니다. 그러나 Linux 는 PgUp+上箭头키 조합을 사용하여 페이지 업할 수 있지만이 페이지 넘기기에는 한계가 있으므로 파일이 충분히 길면 파일의 내용을 볼 수 없습니다. 

따라서 cat 명령은 너무 크지 않은 파일을 보는 데 적합합니다. 물론 Linux에서는 다른 명령이나 메서드를 사용하여 큰 파일을 볼 수 있습니다. 나중에 알아 보겠습니다. 


[예 1] cat 명령 자체는 매우 간단하여 파일의 내용을 직접 볼 수 있습니다. 예를 들면 다음과 같습니다.

[root @ localhost ~] # cat anaconda-ks.cfg 

# 아나콘다가 자동으로 생성 한 킥 스타트 파일 

# version = DEVEL 

install 

cdrom 

lang zh-CN.UTF-8 

... 일부 내용을 생략하십시오 ...

"-n"옵션을 사용하면 줄 번호가 표시됩니다. 예를 들면 다음과 같습니다.

[root @ localhost ~] # cat -n anaconda-ks.cfg 

1 # anaconda에 의해 자동으로 생성 된 킥 스타트 파일 

4 # version = DEVEL 

5 install 

6 cdrom 

... 일부 내용을 생략하십시오 ...

"-A"옵션을 사용하는 경우 "-vET"옵션을 사용하여 캐리지 리턴 ($), 탭 (^ I) 등을 포함하여 텍스트에서 숨겨진 모든 기호를 보는 것과 같습니다. 예를 들면 다음과 같습니다.

[root @ localhost ~] # cat -anaconda-ks.cfg 

# 킥 스타트 파일은 anaconda에 의해 자동으로 생성됩니다. $ 

# version = DEVEL $ 

install $ 

cdrom $ 

... 일부 내용을 생략하십시오 ...


[예 2] file1.txt 및 file2.txt 파일의 내용이 결합되어 file3.txt 파일로 출력됩니다.

[root @ localhost base] # ls 

file1.txt file2.txt 

[root @ localhost base] # cat file1.txt 

http://c.biancheng.net (file1.txt) 

[root @ localhost base] # cat file2.txt 

대단한 (file2.txt) 

[루트 @ localhost를 자료] # 고양이은 file2.txt file2.txt> file3.txt 

[루트 @ localhost를 자료] # 더 file3.txt 

파일 내용을 볼 수 #more 명령 

에 http : // C .biancheng.net (file1.txt) 

은 훌륭합니다 (file2.txt) 

[root @ localhost base] # ls 

file1.txt file2.txt file3.txt