본문 바로가기

리눅스

tar 명령어

반응형

tar 명령어

tar 명령어는 파일들을 하나의 아카이브 파일로 묶거나, 아카이브 파일을 압축하거나 해제하는 유닉스(리눅스) 시스템에서 사용되는 명령어입니다. tar는 "Tape Archive"의 약자로, 주로 여러 파일을 하나의 아카이브로 묶어서 보관하거나 전송하는데 사용됩니다.

기본 구문

tar [옵션] [아카이브 파일명] [파일 또는 디렉토리]
  • 주요 옵션
    • -c: 새로운 아카이브 생성
    • -x: 아카이브 해제
    • -t: 아카이브 내용 확인
    • -f: 아카이브 파일 지정
    • -z: gzip으로 압축하거나 해제 (tar.gz)
    • -j: bzip2로 압축하거나 해제 (tar.bz2)
    • -v: 상세 정보 출력
    • -p: 권한 및 소유자 정보 보존

사용 예시

  • 아카이브 생성 (tar만 사용)
tar -cvf archive.tar file1.txt file2.txt dir/
  • archive.tar: 새로운 아카이브 파일의 이름
  • file1.txt, file2.txt: 아카이브에 포함할 파일들
  • dir/: 아카이브에 포함할 디렉토리
  • 아카이브 생성 (tar와 gzip 사용)
tar -czvf archive.tar.gz file1.txt file2.txt dir/
  • archive.tar.gz: gzip 압축을 사용한 새로운 아카이브 파일의 이름
  • 아카이브 해제 (tar만 사용)
tar -xvf archive.tar
  • archive.tar: 해제할 아카이브 파일의 이름
  • 아카이브 해제 (tar와 gzip 사용)
tar -xzvf archive.tar.gz
  • archive.tar.gz: gzip로 압축된 아카이브 파일의 이름
  • 아카이브 내용 확인
tar -tvf archive.tar
  • archive.tar: 내용을 확인할 아카이브 파일의 이름

위와 같이 tar 명령어를 사용하여 파일들을 묶거나 압축을 해제할 수 있습니다. 또한 필요에 따라 다양한 옵션을 사용하여 더 많은 기능을 활용할 수 있습니다.

 

  • 묶음
    • foo 디렉토리에 있는 내용물을 foo.tar 파일로 묶는다.
$ tar cvvf foo.tar foo/
drwxr-xr-x root/root         0 2022-03-03 17:08 foo/
-rw-r--r-- root/root         0 2022-03-03 17:08 foo/file1.txt
-rw-r--r-- root/root         0 2022-03-03 17:08 foo/file2.txt
-rw-r--r-- root/root         0 2022-03-03 17:08 foo/file3.txt
  • 묶음 풀기
    • 묶음(foo.tar) 파일 리스트 확인
$ tar tvf foo.tar
drwxr-xr-x root/root         0 2022-03-03 17:08 foo/
-rw-r--r-- root/root         0 2022-03-03 17:08 foo/file1.txt
-rw-r--r-- root/root         0 2022-03-03 17:08 foo/file2.txt
-rw-r--r-- root/root         0 2022-03-03 17:08 foo/file3.txt
  • foo.tar 파일을 푼다.
$ tar xvvf foo.tar
drwxr-xr-x root/root         0 2022-03-03 17:08 foo/
-rw-r--r-- root/root         0 2022-03-03 17:08 foo/file1.txt
-rw-r--r-- root/root         0 2022-03-03 17:08 foo/file2.txt
-rw-r--r-- root/root         0 2022-03-03 17:08 foo/file3.txt
  • gzip으로 압축(tar.gz)
$ tar cvfz foo.tar.gz foo
foo/
foo/file1.txt
foo/file2.txt
foo/file3.txt
  • gzip으로 압축된 foo.tar.gz 파일을 푼다.
$ tar xvvzf foo.tar.gz
drwxr-xr-x root/root         0 2022-03-03 17:08 foo/
-rw-r--r-- root/root         0 2022-03-03 17:08 foo/file1.txt
-rw-r--r-- root/root         0 2022-03-03 17:08 foo/file2.txt
-rw-r--r-- root/root         0 2022-03-03 17:08 foo/file3.txt
  • 경로 지정하여 압축 풀기
$ tar xfz foo.tar.gz -C tmp2

 

728x90
반응형

'리눅스' 카테고리의 다른 글

e2label 명령어  (0) 2013.09.29
ncurses libraries 오류  (0) 2013.09.29
crontab 명령어  (2) 2013.09.29
Ubuntu에서 Nginx, Zulu OpenJDK, Tomcat을 설치하고 연동하는 방법  (0) 2013.09.29
wait 명령어  (0) 2013.09.25