Python에서 TAR을 ZIP과 병합

저장 또는 전송을 위한 파일 및 폴더의 크기를 줄이기 위해 다양한 데이터 압축 기술이 사용됩니다. 일반적으로 사용되는 두 가지 압축 형식은 TARZIP이며 각각 고유한 장점과 사용 사례가 있습니다. 하지만 이러한 형식을 결합해야 한다면 어떻게 될까요? 이번 블로그 게시물에서는 Python에서 TAR과 ZIP을 병합하는 방법을 살펴보겠습니다.

TAR을 ZIP과 병합하는 Python 라이브러리

Aspose.ZIP for Python은 ZIP 및 TAR을 포함한 다양한 아카이브 형식으로 작업할 수 있는 기능이 풍부한 라이브러리입니다. 라이브러리를 사용하여 아카이브를 쉽게 생성, 추가, 추출 및 조작할 수 있습니다. 우리는 이 라이브러리를 사용하여 TAR을 ZIP 아카이브와 병합할 것입니다.

라이브러리를 다운로드하거나 PyPI에서 설치할 수 있습니다.

> pip install aspose-zip

TAR을 ZIP과 병합하는 이유는 무엇입니까?

기술적인 세부 사항을 살펴보기 전에 TAR을 ZIP과 병합하려는 이유에 대해 간략하게 논의해 보겠습니다. TAR과 ZIP 모두 고유한 장점이 있습니다.

  • TAR: TAR은 Unix 및 Linux 시스템에서 일반적으로 사용되는 파일 보관 형식입니다. 압축하지 않고 여러 파일과 디렉터리를 단일 파일로 묶는 데 이상적입니다. TAR 아카이브는 배포용 파일 백업 및 패키징에 자주 사용됩니다.

  • ZIP: ZIP은 파일과 디렉터리를 묶을 뿐만 아니라 압축하여 저장 공간을 줄이고 파일 전송 속도를 높이는 널리 사용되는 압축 형식입니다. ZIP은 여러 플랫폼에서 지원되며 다양한 보관 도구와 호환됩니다.

TAR과 ZIP을 병합하면 TAR 파일의 디렉터리 구조를 유지하면서 ZIP의 압축 이점을 얻으려는 시나리오에서 유용할 수 있습니다.

Python에서 TAR을 ZIP과 병합

다음은 Python에서 TAR과 ZIP을 병합하는 단계입니다.

  • 먼저 TarArchive 클래스를 사용하여 TAR을 로드합니다.
  • 그런 다음 Archive 클래스를 사용하여 ZIP을 로드합니다.
  • 그런 다음 Archive.entries 컬렉션을 사용하여 TAR 항목을 반복합니다.
  • Archive.entries[index].extract(BytesIO) 메소드를 사용하여 TAR의 각 항목을 BytesIO 객체로 추출합니다.
  • Archive.createentry(string, BytesIO) 메서드를 사용하여 추출된 항목을 ZIP 아카이브에 추가합니다.
  • 마지막으로 Archive.save(string) 메소드를 사용하여 ZIP 아카이브를 저장하십시오.

다음 코드 샘플은 Python에서 TAR을 ZIP 아카이브와 병합하는 방법을 보여줍니다.

import aspose.zip as az
from io import BytesIO

# TAR 파일 로드
with az.tar.TarArchive("source.tar") as source:
  
    # ZIP 파일 로드
    with az.Archive("target.zip") as target:
      
        # TAR 항목을 반복하여 ZIP에 추가합니다.
       for i in range(source.entries.length):
            if not source.entries[i].is_directory:
                ms = BytesIO()
                source.entries[i].extract(ms)
                target.create_entry(source.entries[i].name, ms)
            else:
                target.create_entry(source.entries[i].name + "/", None)
        
        # ZIP 아카이브 저장
        target.save("merged_tar_zip.zip")

Python ZIP 라이브러리 - 무료 라이센스 받기

무료 임시 라이센스를 받고 평가 제한 없이 다양한 아카이브 형식으로 작업하세요.

학습 자료

아래 리소스를 사용하여 Python ZIP 라이브러리에 대해 자세히 알아보세요.

온라인 ZIP 도구

Python용 Aspose.ZIP으로 구동되는 무료 아카이브 작업을 위한 온라인 도구를 사용하세요.

결론

Python용 Aspose.ZIP을 사용하여 TAR과 ZIP을 병합하는 것은 두 보관 형식의 장점을 모두 활용할 수 있는 간단한 프로세스입니다. 배포를 위해 파일을 패키지해야 하거나, 백업을 생성해야 하거나, 단순히 저장 공간을 줄여야 하는 경우 Aspose.ZIP은 작업을 단순화하고 프로세스를 세밀하게 제어할 수 있습니다. 이 블로그 게시물에 제공된 지침을 쉽게 따르고 Python 애플리케이션에서 TAR을 ZIP 아카이브와 병합할 수 있습니다.

또한보십시오