>  기사  >  php教程  >  Linux에서 압축 해제 tar 명령에 대한 자세한 설명

Linux에서 압축 해제 tar 명령에 대한 자세한 설명

高洛峰
高洛峰원래의
2016-12-19 14:25:431210검색

tar [-cxtzjvfpPN] 파일 및 디렉터리....
매개변수:
-c: 압축 파일을 생성하는 매개변수 명령(만들기를 의미)
-x: 압축 파일의 압축을 풀기 매개변수 명령 !
-t: tarfile의 파일을 봅니다!
특히 매개변수 릴리스에는 c/x/t가 하나만 존재할 수 있다는 점에 유의하세요! 동시에 존재할 수 없습니다!
압축과 압축 해제가 동시에 불가능하기 때문이죠.
-z: gzip의 속성도 갖고 있나요? 즉, gzip 압축을 사용해야 합니까?
-j: bzip2의 속성도 갖고 있나요? 즉, bzip2 압축을 사용해야 합니까?
-v: 압축하는 동안 파일을 표시합니다! 이는 일반적으로 사용되지만 백그라운드 실행 프로세스에서는 사용하지 않는 것이 좋습니다!
-f: 파일 이름을 사용하세요. 파일 이름은 f 바로 뒤에 와야 합니다. 더 이상 매개변수를 추가하지 마세요!
예를 들어 "tar -zcvfP tfile sfile"을 사용하는 것은 잘못된 것입니다.
"tar -zcvPf tfile sfile"로 작성해야 합니다.
-p: 원본 파일의 원래 속성을 사용합니다. (속성은 사용자에 따라 변경되지 않습니다.)
-P: 압축에 절대 경로를 사용할 수 있습니다!
-N: 새로 생성된 파일에는 다음 날짜(yyyy/mm/dd)보다 최신 날짜만 패키징됩니다!
--FILE 제외: 압축 프로세스 중에는 FILE을 패키지하지 마세요!
예:
예 1: 전체 /etc 디렉토리의 모든 파일을 /tmp/etc.tar로 압축합니다
[root@ www.linuxidc.com ~]# tar -cvf /tmp/etc. tar /etc<==압축이 아닌 패키징만 가능합니다!
[root@ www.linuxidc.com ~]# tar -zcvf /tmp/etc.tar.gz /etc<==패키징 후 gzip으로 압축
[root@ www.linuxidc.com ~] # tar -jcvf /tmp/etc.tar.bz2 /etc<==패키징 후 bzip2로 압축
# 매개변수 f 뒤의 파일명은 직접 선택하여 사용한다는 점에 특히 주의하세요. .tar를 ID로 사용합니다.
# z 매개변수를 추가하면 .tar.gz 또는 .tgz가 gzip 압축 tar 파일을 나타냅니다~
# j 매개변수를 추가하면 .tar.bz2 파일이 사용됩니다 Extension~
# 위 명령을 실행하면 다음과 같은 경고 메시지가 출력됩니다:
# 『tar: 제거 선행 `/" from member names』 이는 절대 경로에 대한 특별한 설정입니다.

예제 2 : 위 /tmp/etc.tar.gz 파일에 어떤 파일이 있는지 확인하세요.
[root@ www.linuxidc.com ~]# tar -ztvf /tmp/etc.tar.gz
# gzip 압축을 사용하므로 tar 파일에 있는 파일을 확인하려면
# z 매개변수를 추가해야 합니다.

예제 3: /tmp/etc를 변경하세요. tar.gz 파일은 /usr/local/src
[root@ www.linuxidc.com ~]# cd /usr/local/src
[root@ www.linuxidc.com src]# tar에서 압축이 풀립니다. -zxvf / tmp/etc.tar.gz
# 기본적으로 압축 파일은 어디에나 압축을 풀 수 있습니다! 이 예에서는
# 먼저 작업 디렉터리를 local/src 아래의 /usr/로 변경하고 압축을 풉니다. /tmp/etc.tar.gz,
# 그러면 묶이지 않은 디렉토리는 /usr/local/src/etc에 있게 됩니다! 또한 /usr/local/src/etc
#을 입력하면 이 디렉토리의 파일 속성은 /etc/와 다를 수 있습니다!

예 4: /tmp 아래에서는 /tmp/etc만 압축이 풀립니다.
[root@ www.linuxidc.com ~]# cd /tmp
[root@ www.linuxidc.com tmp]# tar -zxvf /tmp/etc.tar.gz etc/passwd
# 사용할 수 있습니다 tar -ztvf를 사용하여 tarfile에서 파일 이름을 확인하세요.
# etc.tar를 통해 다운로드할 수 있습니다! .gz의 루트 디렉터리가 제거되었습니다.

예 5: /etc/에 있는 모든 파일을 백업하고 해당 권한을 저장하세요!
[root@ www.linuxidc.com ~ ]# tar -zxvpf /tmp/etc.tar.gz /etc
# 이 -p 속성은 특히 원본 파일의 속성을 유지하려는 경우 매우 중요합니다!

예 6: /home에서는 2005/06/01 이후의 파일만 백업합니다.
[root@ www.linuxidc.com ~]# tar -N "2005/06/01" - zcvf home.tar.gz /home

예 7: /home, /etc를 백업하고 싶지만 /home/dmtsai는 백업하고 싶지 않습니다
[root@ www.linuxidc.com ~]# tar -- 제외 /home/dmtsai -zcvf myfile.tar.gz /home/* /etc

예 8: 파일을 생성하지 않고 /tmp 바로 아래에 /etc/의 압축을 풉니다!
[root@ www.linuxidc.com ~]# cd /tmp
[root@ www.linuxidc.com tmp]# tar -cvf - /etc | tar -xvf -
# 이 작업은 cp -r /etc /tmp와 비슷합니다~ 여전히 용도가 있습니다!
# 주목해야 할 점은 출력 파일도 -가 되고, 입력 파일도 -가 되고, 또 있다는 점입니다~
# 이들은 각각 표준 출력, 표준 입력 및 파이프라인 명령을 나타냅니다!


리눅스의 tar 명령어에 대한 더 자세한 설명과 관련 글은 PHP 중국어 홈페이지를 참고해주세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.