| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | ||
| 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| 13 | 14 | 15 | 16 | 17 | 18 | 19 |
| 20 | 21 | 22 | 23 | 24 | 25 | 26 |
| 27 | 28 | 29 | 30 |
Tags
- UNIX
- shell
- sysadmin
- 리눅스
- Solaris
- 리눅스명령어
- 사용자관리
- 쉘스크립트
- PackageManagement
- 터미널
- 유닉스
- Unix명령어
- 자바스크립트
- 유닉스명령어
- linuxcommand
- js
- UnixCommand
- terminal
- tcsh
- 정규표현식
- bash
- 명령어
- linux
- coreutils
- 파일시스템
- cups
- 시스템관리
- php
- JavaScript
- environment
Archives
- Today
- Total
ioerror
zcat 사용법 및 옵션 - 압축 파일의 내용을 해제 없이 표준 출력으로 조회 본문
반응형

zcat - compressed file concatenate and print
압축 파일의 내용을 해제 없이 표준 출력으로 조회
zcat 명령어는 gzip 또는 compress 유틸리티로 압축된 파일(.gz, .Z 등)의 압축을 디스크에 직접 해제하지 않고, 메모리상에서 즉시 풀어 표준 출력(stdout)으로 내용을 표시하는 유닉스 및 리눅스 CLI 유틸리티이다. 대용량 시스템 로그 파일이나 압축된 데이터베이스 덤프 파일을 디스크 용량 소비 없이 실시간으로 읽거나 다른 명령어와 파이프라인으로 연결할 때 주로 활용된다.
1. 명령어 용도
- 디스크 공간을 사용하지 않고 .gz 압축 로그 파일의 내용을 터미널에서 즉시 조회하는 경우
- 압축 해제 과정 없이 grep, awk, sed 등의 텍스트 처리 도구와 파이프로 연결하여 특정 키워드를 검색하는 경우
- 여러 개의 압축된 분할 파일을 하나의 연속된 스트림으로 결합하여 처리하는 경우
2. 명령어 서식
Bash
zcat [OPTION]... [FILE]...
3. 명령어 옵션
- 주요 옵션 소개 테이블
| 옵션 | 설명 | 사용가능 OS 및 쉘 |
| -f, --force | 압축되지 않은 일반 파일이나 여러 링크가 연결된 파일도 강제로 읽어 출력하다. | [Linux/GNU] |
| -h, --help | 명령어 사용법 및 도움말 정보를 출력하고 종료하다. | [Linux/GNU] |
| -L, --license | 소프트웨어 라이선스 정보를 출력하고 종료하다. | [Linux/GNU] |
| -M | 파일 출력 시 페이지 번호를 함께 표시하다. | [macOS/BSD] |
| -q, --quiet | 압축 파일 관련 경고 메시지 출력을 억제하다. | [Linux/GNU] |
| -r, --recursive | 디렉터리 내부를 재귀적으로 탐색하여 포함된 모든 압축 파일을 출력하다. | [Linux/GNU] |
| -S .sfx, --suffix .sfx | 지정한 압축 확장자(.sfx)를 가진 파일만 인식하여 처리하다. | [Linux/GNU] |
| -t, --test | 압축 파일의 무결성을 검사하다 (내용은 출력되지 않다). | [Linux/GNU] |
| -v, --verbose | 압축 파일명, 압축률 등의 상세 정보 및 결과를 함께 출력하다. | [Linux/GNU] |
| -V, --version | 명령어의 버전 정보를 출력하고 종료하다. | [Linux/GNU] |
- 명령어 옵션 사용시 결과 예시
Bash
# 1. 압축 파일 내용 기본 조회
zcat access.log.gz
# output:
# 192.168.1.10 - - [09/Aug/2026:10:00:01 +0900] "GET /index.html HTTP/1.1" 200 4523
# 192.168.1.11 - - [09/Aug/2026:10:00:05 +0900] "POST /login HTTP/1.1" 200 1204
# 2. 파이프를 활용한 특정 에러 키워드 필터링
zcat system.log.gz | grep "ERROR"
# output:
# [2026-08-09 14:20:11] ERROR: Database connection failed.
# 3. 압축 파일 무결성 검사 (-t)
zcat -t backup.tar.gz
# output: (오류가 없으면 아무런 출력 없이 종료 상태 코드 0 반환)
# 4. 일반 파일과 압축 파일이 섞여 있을 때 강제 출력 (-f) [Linux/GNU]
zcat -f normal.txt compressed.log.gz
# output:
# normal.txt의 텍스트 내용이 먼저 출력된 후 compressed.log.gz의 압축 해제 내용이 이어서 출력되다.
4. 명령어 특이사항(유의사항)
- macOS/BSD와 Linux의 구현 차이: Linux(GNU coreutils/gzip)의 zcat은 gzip -dc와 완전히 동일하게 동작하여 .gz 파일을 기본 처리하다. 반면 macOS/BSD 계열의 기본 zcat은 전통적인 compress(.Z) 형식 파일만 처리하도록 제한되어 있어 .gz 파일 실행 시 오류가 발생할 수 있다. macOS 환경에서 .gz 파일을 처리할 때는 gzcat 명령어를 사용하거나 zcat < file.gz 형태로 리다이렉션을 사용하는 것이 권장된다.
- 메모리 및 CPU 사용량: 압축 파일 해제 작업이 파일 시스템(디스크)이 아닌 RAM 메모리 상에서 실시간으로 수행되므로 대용량 압축 파일을 한 번에 출력할 경우 순간적으로 CPU 및 메모리 사용량이 증가할 수 있다.
- zgrep, zless와의 비교: 단순 출력이 아닌 파일 내 검색은 zcat file.gz | grep pattern 대신 zgrep pattern file.gz를 사용하는 것이 효율적이며, 긴 페이지 탐색은 zless 명령어를 사용하는 것이 유용하다.
관련 명령어들
- gzip: 파일 압축 및 해제를 수행하는 표준 유틸리티이다.
- gunzip: gzip으로 압축된 파일의 압축을 해제하다.
- zgrep: 압축 파일을 해제하지 않고 내부 텍스트 패턴을 직접 검색하다.
- zless: 압축 파일의 내용을 less 페이저 인터페이스로 나누어 조회하다.
- bzcat: bzip2(.bz2) 형식으로 압축된 파일의 내용을 표준 출력하다.
- xzcat: xz(.xz) 형식으로 압축된 파일의 내용을 표준 출력하다.
https://ioerror.tistory.com/entry/UNIX-Linux-Command-Reference
UNIX & Linux Command Reference
유닉스 / 리눅스 명령어 표유닉스와 리눅스 환경에서 자주 사용되는 필수 명령어들을 완벽하게 정리한다. 서버 관리, 프로그래밍, 일상적인 시스템 운영 등 어떤 목적이든 터미널 환경을 능숙하
ioerror.tistory.com
반응형
'OS' 카테고리의 다른 글
| =(equal) 사용법 및 옵션 - 문자열 비교 및 조건식 검증 연산자 (0) | 2026.08.09 |
|---|---|
| zip 사용법 및 옵션 - 파일 및 디렉터리 압축 및 아카이브 생성 (0) | 2026.08.09 |
| xterm 사용법 및 옵션 - X 윈도우 시스템 표준 터미널 에뮬레이터 (0) | 2026.08.09 |
| xsetroot 사용법 및 옵션 - X 윈도우 시스템 루트 배경 화면 및 커서 설정 (0) | 2026.08.09 |
| xset 사용법 및 옵션 - X 윈도우 시스템 사용자 옵션 및 디스플레이 설정 변경 (0) | 2026.08.09 |
Comments