Linux

tar 이용하기

일단해볼게 2023. 11. 26. 21:06

정의

Tape ARchive

 

 

목적

파일을 하나로 묶거나 묶인 파일을 푼다.

압축한다고 알려져있는데 실제로 tar에서는 압축하는 일은 없다.

tar와 다른 zip 방식이 사용되어 압축되어 묶이는 것이다.

 

 

압축 종류

gzip, bzip2, xz(가장 최신 => 높은 효율)

 

**tar는 단순이 파일을 묶는데 그치지 않고 묶여지기 전 파이릐 속성과 심볼릭 링크, 디렉터리 구조등을 가져갈 수 있다는 특징이 있다.

 

 

 

 

용도

 

묶기(+ 압축)

#기본 포맷(파일 하나 하나 지정, 경로 하나 하나 지정)
tar -cvf target.tar file1 file2 dir1 dir2

#현재 디렉터리의 모든 파일과 디렉토리 묶기
tar -cvf target.tar *

#대상 디렉토리를 포함한 모든 파일과 디렉토리 묶기 => target 포함하여 하위 디렉토리가 함께 묶임
tar -cvf target.tar /target

#gzip으로 묶고 압축하기
tar -cvzf target.tar.gz file1 file2 dir1 dir2

#xz로 묶고 압축하기
tar -cvJf target.tar.xz file1 file2 dir1 dir2​

 

 

 

풀기

#기본 포맷(현재 디렉토리에 풀기)
tar -xvf target.tar

#대상 디렉토리에 tar 아카이브 풀기 => 대상 디렉토리 하위에 파일이 풀림
tar -xvf target.tar -C /target

#gzip으로 묶인 tar 풀기
tar -zxvf target.tar.gz

#xz로 묶인 tar 풀기
tar -Jxvf target.tar.xz​

 

 

 

 

기타

#tar 작업 시 진행 여부 파악하기
tar -cvfw target.tar *​

 

 

 

 


 

Options

 


-f 대상(target) tar 지정
-c tar 아카이브 생성, 기존 아카이브 덮어쓰기(파일 묶을 때)
-x tar 아카이브 파일 추출(파일 풀 때)
-v 처리 과정 출력
-z gzip 압축 옵션
-j bzip2 압축 옵션
-J xz 압축 옵션
-t tar 아카이브에 포함된 내용 확인
-C 대상 디렉토리 지정
-A 지정된 파일 tar 아카이브 추가
-d tar 아카이브와 파일 시스템 간 차이점 출력(diff)
-r tar 아카이브의 마지막에 파일들 추가
-u tar 아카이브의 변경된 파일들만 추가
-k tar아카이브 추출 시, 기존 파일 유지
-U tar 아카이브 추출 전, 기존 파일 삭제
-w 모든 진행 과정에 대한 확인 요청(interactive)
-e 에러 발생 시 중지

 

 

 


 

참고 링크

 

https://www.servermon.kr/board/board.html?code=servermon_board2&page=1&type=v&num1=999943&num2=00000&lock=N