사용자 도구

사이트 도구


linux:tar

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
linux:tar [2015/09/13 22:04]
kwon37xi
linux:tar [2022/07/24 11:01] (현재)
kwon37xi [Dot file(hidden file) 까지 압축]
줄 7: 줄 7:
 <code sh> <code sh>
 tar cvjf archive.tar.bz2 /path/to/archive tar cvjf archive.tar.bz2 /path/to/archive
 +</code>
 +
 +===== 특정 디렉토리 아래 모두 압축 =====
 +<code sh>
 +# xxx/yyy/zzz 일때, yyy 아래의 모든 파일(zzz 포함)일 때, 단 yyy 라는 부모 경로는 빼고
 +
 +cd xxx/yyy
 +tar cvzf yyy.tar.gz *
 </code> </code>
  
줄 14: 줄 22:
 <code sh> <code sh>
 tar cvjf xx.tar.bz2 -C /path/to/parent 압축할파일1 압축할파일2 ... tar cvjf xx.tar.bz2 -C /path/to/parent 압축할파일1 압축할파일2 ...
 +tar cvjf xx.tar.bz2 -C /path/to/parent . # 해당 디렉토리 아래 전체
 +
 </code> </code>
 +
   * ''-C'' 옵션은 압축을 풀 때 풀린 내용이 저장될 대상 디렉토리 지정할 때도 사용한다.   * ''-C'' 옵션은 압축을 풀 때 풀린 내용이 저장될 대상 디렉토리 지정할 때도 사용한다.
   * ''%%--%%exclude=패턴'' : 일치하는 패턴의 파일은 제외   * ''%%--%%exclude=패턴'' : 일치하는 패턴의 파일은 제외
줄 20: 줄 31:
 ===== Dot file(hidden file) 까지 압축 ===== ===== Dot file(hidden file) 까지 압축 =====
   * 압축 대상 파일을 지정할 때 ''.'' 으로 혹은 ''.*''으로 지정한다.   * 압축 대상 파일을 지정할 때 ''.'' 으로 혹은 ''.*''으로 지정한다.
 +
 +===== 특정 디렉토리에 압축 풀기 =====
 +  * ''%%--directory=directory%%''
 +<code sh>
 +tar xf source.tar[.gz|.bz2|.xz] --directory=directory
 +</code>
 +===== 최상위 디렉토리 제외하고 압축풀기 =====
 +  * [[:intellij_idea|IntelliJ IDEA]] 압축파일은 빌드번호로 된 디렉토리로 감싸져 압축돼 있는데, 이를 무시하고 특정 디렉토리를 최상위로 해서 압축 풀기.
 +<code sh>
 +tar xvzf ideaIU-2020.2.1.tar.gz --strip=1 -C ~/.local/share/ideaIU
 +</code>
 +
 +===== Backup 하기 =====
 +  * [[https://help.ubuntu.com/community/BackupYourSystem/TAR|BackupYourSystem/TAR]]
 +<code sh>
 +tar -cvpzf backup.tar.gz \
 +  --exclude=/backup.tar.gz \
 +  --one-file-system \
 +  -C <원하는디렉토리> .
 +</code>
 +  * ''%%--one-file-system%%'' : 동일 파티션내의 데이터만, (link 로 다른데로 걸려있는 것들 제외)
 +  * ''$HOME'' 기준으로 여러 디렉토리 백업하기
 +<code sh>
 +# "vivaldi default profile 에서 "Service Workder"는 캐시 역할이라서 제외하고 백업
 +cd ~
 +tar cvpzf /tmp/home-backups.tar.gz --one-file-system \
 +  --exclude="Service Worker" \
 +  .config/JetBrains \
 +  .local/share/JetBrains/ .config/vivaldi/Default
 +
 +# 복원
 +cd ~
 +tar xvzf /tmp/home-backups.tar.gz
 +</code>
 +===== 참조 =====
 +  * [[https://www.tecmint.com/18-tar-command-examples-in-linux/|18 Tar Command Examples in Linux]]
  
linux/tar.1442151275.txt.gz · 마지막으로 수정됨: 2015/09/13 22:04 저자 kwon37xi