tar로 폴더를 압축 하시겠습니까?

폴더 (/var/www/)를 ~/www_backups/$time.tar 여기서 $time는 현재 날짜입니다.

내가 가지고있는 정보 :

cd /var/www && sudo tar -czf ~/www_backups $time" 

나는 완전히 길을 잃었고 몇 시간 동안이 일을했습니다. -czf가 올바른지 확실하지 않습니다. /var/www의 모든 콘텐츠를 $time.tar 파일로 복사하고 모든 콘텐츠에 대한 파일 권한을 유지하고 싶습니다. 파일. 누구든지 나를 도울 수 있습니까?

댓글

  • "의 반대편에 "가 필요합니다. div id = “09ba33bc11″>

도 있습니다.

답변

targzip 폴더의 구문은 다음과 같습니다.

tar czf name_of_archive_file.tar.gz name_of_directory_to_tar 

- with czf는 선택 사항입니다.

tar를 원하는 경우 현재 디렉토리에서 .를 사용하여 지정합니다.

파일 이름을 동적으로 구성하려면 date 유틸리티를 사용합니다 ( 사용 가능한 형식 옵션에 대한 매뉴얼 페이지). 예 :

cd /var/www && tar czf ~/www_backups/$(date +%Y%m%d-%H%M%S).tar.gz . 

그러면 20120902-185558.tar.gz와 같은 이름의 파일이 생성됩니다.

Linux에서는 tarz 대신 j를 사용하여 BZip2 압축을 지원할 가능성이 있습니다. 선택권. 그리고 아마도 다른 것. 로컬 시스템의 맨 페이지를 확인하세요.

댓글

  • 완벽합니다. 감사합니다. 그래도 작은 문제가 하나 있습니다. / var / www의 tar 파일을 만든 후 tar 파일의 / var / www 디렉토리에 배치됩니다. 다음은 ' 코드입니다. ' 현재 사용중인 코드입니다. sudo tar -czf ~/www_backups/$time.tar /var/www/" / var / www 내의 test.txt. 파일의 tar 사본을 만든 후 압축을 풀면 / var / www 디렉토리에 저장됩니다. 말이 돼? 설명하기가 좀 어렵습니다. 제안 해 주셔서 감사합니다. BZip2 지원 여부를 확인하겠습니다.
  • '이 (가) 처음으로 cd 패키징하려는 디렉토리를 지정한 다음 tar cf file.tar .-전체 경로를 지정하는 대신 마지막 .가 아카이브 내부의 경로를 현재 디렉토리. tar에 -C 옵션을 사용할 수도 있습니다 (맨 페이지 참조).
  • 네, 훨씬 더 잘 작동했습니다. 감사합니다. 감사합니다!
  • @Qwertylicious -f (맨 페이지에서) Read the archive from or write the archive to the specified file.The filename can be - for standard input or standard output.
  • 최신 버전의 tar에서는 대문자 J (z 대신)가 xz LZMA2 압축.

답변

가장 일반적인 압축 알고리즘의 예

문제 제목은 간단히 " 압축 tar with tar? "이 제목은 매우 일반적이지만 질문과 답변이 훨씬 더 구체적이고이 질문을 끌어 들인 조회수가 매우 많기 때문에 느꼈습니다. 일반적으로 사용되는 다양한 압축 알고리즘을 사용하여 보관 / 압축 및 추출 / 압축 해제의 최신 예 목록을 추가하는 것이 좋습니다.

우분투 18.04.4에서 테스트되었습니다. 일반적으로 사용하기에는 매우 간단하지만 위의 허용 된 답변과 유용한 설명의 기술을 사용하여 OP의보다 구체적인 질문 내용에 쉽게 통합 할 수 있습니다.

더 일반적인 사항에 대해 유의해야 할 한 가지 잠재 고객은 tar가 필요한 확장 (예 : .tar.gz)을 자동으로 추가하지 않습니다. 사용자는 다음과 같이 명시 적으로 추가해야합니다. 아래 명령 :

# 1: tar (create uncompressed archive) all files and directories in the current working directory recursively into an uncompressed tarball tar cvf filename.tar * # 2: Untar (extract uncompressed archive) all files and directories in an uncompressed tarball recursively into the current working directory tar xvf filename.tar # 3: tar (create gzipped archive) all files and directories in the current working directory recursively into a tarball compressed with gzip tar cvzf filename.tar.gz * # 4: Untar (extract gzipped archive) all files and directories in a tarball compressed with gzip recursively into the current working directory tar xvf filename.tar.gz # Note: same options as 2 above # 5: tar (create bzip2"ed archive) all files and directories in the current working directory recursively into a tarball compressed with bzip2 tar cvjf filename.tar.bz2 * # Note: little "j" in options # 6: Untar (extract bzip2"ed archive) all files and directories in an tarball compressed with bzip2 recursively into the current working directory tar xvf filename.tar.bz2 # Note: same options as 2 and 4 above # 7: tar (create xz"ed archive) all files and directories in the current working directory recursively into a tarball compressed with xz tar cvJf filename.tar.xz * # Note: capital "J" in options # 8: Untar (extract xz"ed archive) all files and directories in an tarball compressed with xz recursively into the current working directory tar xvf filename.tar.xz # Note: same options as 2, 4, and 6 above 

tar 맨 페이지 참조 (man tar를 참조하십시오. 아래에는 맨 페이지에서 직접 사용 된 옵션이 요약되어 있습니다.

-c, –create
새 아카이브 생성

-x, –extract, –get
아카이브에서 파일 추출

-v, –verbose
처리 된 파일을 자세히 나열

-z, –gzip
gzip을 통해 아카이브 필터링

-j, –bzip2
bzip2를 통해 아카이브 필터링

-J, –xz
xz를 통해 아카이브 필터링

-f, –file = ARCHIVE
아카이브 파일 또는 장치 ARCHIVE 사용

결합 된 옵션 앞에 - 또는 = 기호를 추가 할 필요가 없습니다. f 옵션과 파일 이름 사이.

이 모든 것을 최근 기사 에서 얻었습니다. 작업 할 시간이 있으면 훨씬 더 포괄적 인 기사로 확장 될 것입니다. 그것입니다.

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다