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 | 에러 발생 시 중지 |
참고 링크