리눅스 - 파일 묶기/압축

코린이·2024년 11월 12일

Linux

목록 보기
8/27

📌 tar(Tape Archive)

리눅스에서 tar은 파일/디렉토리를 하나의 아카이브 파일로 묶거나, 압축된 아카이브 파일을 원래 상태로 풀 때 사용하는 명령어다.

  • 아카이브 파일 : 여러 파일/디렉토리를 하나의 파일로 묶어 저장하는 방식
  • 아카이브 파일 생성 시 확장자명은 꼭 .tar로 작성할 필요는 없다. (확장자명을 자유롭게 작성할 수 있지만, 통상적으로 .tar 확장자를 많이 사용)
tar [옵션] [아카이브 파일 이름] [파일 or 디렉토리]
--------- 옵션 list ---------
-c : 새로운 아카이브 파일 생성
-x : 아카이브 파일 추출
-v : 처리 중인 파일을 보여주는 모드
-f : 아카이브 파일 이름 지정
-z : gzip으로 압푹
-t : 아카이브 파일 목록 확인
-r : 기존 아카이브에 새로운 파일 추가

파일 file1.txt, file2.txt, file3.txt을 하나로 묶어 archive_f.tar아카이브 파일 생성

# 명령어 -cvf를 사용하여 새로운 아카이브 파일 생성
tar -cvf archive_f.tar file1.txt file2.txt file3.txt

/tmp디렉토리를 묶어 하나의 archive_d.tar아카이브 파일 생성

  • /tmp 디렉토리의 하위 파일과 하위 디렉토리까지 하나로 묶인다.
# 명령어 -cvf를 사용하여 새로운 아카이브 파일 생성
tar -cvf archive_d.tar /tmp

묶여있는 아카이브 파일에서 파일/디렉토리 추출

# 모든 파일 추출
tar -xvf archive_f.tar

# 특정 파일만 추출
tar -xvf archive_f.tar file2.txt		# 아카이브 파일에서 file2.txt만 추출

압축된 아카이브 파일 생성

# -z 옵션을 사용하여 압축된 gzip 아카이브 파일을 생성
tar -czvf archive_f.tar file1.txt file2.txt file3.txt

압축된 아카이브 파일 압축 해제-추출

  • 파일 압축 해제 후 묶여있던 파일까지 추출
tar -xzvf archive_f.tar.gz

아카이브 파일 목록 확인

tar -tvf archive_f.tar

아카이브 파일에 파일 추가하기

# 기존 아카이브 파일에 file4.txt 파일 추가
tar -rvf archive_f.tar file4.txt

📌 gzip

리눅스에서 gzip은 파일을 압축하는 명령어다.

  • 디렉토리는 압축X
  • 파일 압축 시 원본 파일은 삭제된다.
gzip [옵션] [파일]
--------- 옵션 list ---------
-c : 새로운 압축 파일 생성
-v : 처리 중인 압축 상태를 보여주는 모드
-d : 압축 해제
-l : 압축된 파일 정보 출력
-1 ~ -9 : 압축 수준 설정 (-1 가장 빠른 압축, -9 가장 높은 압축률)
# 파일 압축하기
gzip -c file.txt		# file.txt.gz 생성 (기존 file.txt 파일은 삭제)

# 파일 압축 해제하기
gzip -d file.txt.gz		# file.txt 생성 (기존 file.txt.gz 파일은 삭제)

📌 gunzip

리눅스에서 gunzip은 압축된 파일을 해제하는 명령어다.

  • 파일 압축 해제 시 원본 파일은 삭제된다.
  • gzip명령어의 -d 옵션과 같은 기능을 수행한다.
# 파일 압축 해제하기
gunzip file.txt.gz		# file.txt 생성 (기존 file.txt.gz 파일은 삭제)

0개의 댓글