리눅스(Linux)에서 cat 명령어는 concatenate에서 유래했고 '연결시키다'의 의미를 가지고 있습니다.
파일의 내용을 간단하게 출력할 때와 두 개 이상의 파일을 연결(concatenate)해서 출력할 때 사용합니다.
보통 리다이렉션 기호와 함께 사용하여 파일을 생성하거나 병합 할 때도 사용됩니다.
※ 리다이렉션 기호란?
기호 | 방향 | 의미 |
> | 표준 출력 | 명령 > 파일 : 명령의 결과를 파일에 저장 |
>> | 표준 출력 (추가) | 명령 >> 파일 : 명령의 결과를 기존 파일에 추가 |
< | 표준 입력 | 명령 < 파일 : 파일의 데이터를 명령에 입력 |
cat 명령어 사용법
cat [옵션] 파일명 또는 cat [옵션] 파일명 파일명 .. 파일명 n (복수의 파일) --> 옵션은 파일명 앞 뒤 상관없다.
옵션
-A : 탭(TAB)과 줄 바꿈(LFD)을 포함한 문자를 표시합니다. -vET와 동일
-b : 비어있지 않은 라인에만 첫 번째 열에 번호를 표시합니다.
-e : 줄 바꿈(LFD)을 포함한 문자를 표시합니다. -vE와 동일
-E : 라인의 마지막에 '$' 기호를 표시합니다.
-n : 모든 라인의 앞에 번호를 함께 출력합니다.
-t : 탭(TAB)을 포함한 문자를 표시합니다. -vT와 동일
-T : 탭(TAB) 문자를 ^I 로 표시합니다.
-v : 탭(TAB)과 줄 바꿈(LFD)을 제외한 문자를 ^,M-를 사용하여 표시합니다.
파일 생성 & 병합
# cat file > new_file // file의 내용을 new_file라는 이름으로 생성
# cat file1 file2 file3 > new_flie // file1 + file2 + file3 내용을 병합하여 new_file라는 이름으로 생성
# cat file2 >> file1 // file2의 내용을 file1에 추가함
위와 같이 리다이렉션 기호 > 을 사용하여 대상 파일의 내용을 복사하거나 생성, 병합할 수 있습니다.
생성될 파일명이 이미 존재할 경우엔 파일 내용이 그대로 덮어쓰니 이 부분은 주의하셔야 합니다.
입력 내용을 파일로 저장
# cat > file.txt
new content 내용입력
ctrl + d 입력
# cat >> file.txt
new content 내용입력
ctrl + d 입력
cat 명령어 바로 뒤에 > 을 붙여서 실행시키면 터미널에 문자를 입력할 수 있는 표준 입력창이 나옵니다.
추가하고 싶은 내용을 입력하고 CTRL + D 를 입력하면 파일로 저장됩니다.
※ 로그 용량 확보 방법
아래 명령을 수행하게 되면 null (0) 값으로 파일을 채우게 되면서 사이즈가 0이 되고 파일은 남습니다.
# cat /dev/null > file1
ex) cat /dev/null > /usr/local/apache2/logs/access.log
로그가 엄청 쌓여서 용량이 부족한 경우 null 값을 넣어 용량을 확보한다.
'OS > Linux' 카테고리의 다른 글
Linux - 네트워크설정(IP / DNS 설정) (0) | 2023.03.14 |
---|---|
Linux - 서버 간 파일 복사 명령어(scp) / 원격 파일 복사 (0) | 2023.03.10 |
Linux - 텍스트 편집 명령어(sed) (2) | 2023.02.16 |
Linux - mount(마운트) (0) | 2023.02.14 |
Linux - kernel(커널) 이란 무엇일까? (0) | 2023.02.09 |