여러 개의 zip 파일을 하나의 파일로 보관

여러 개의 zip 파일을 하나의 파일로 보관

여러 개의 기존 zip 파일을 하나로 병합하는 방법은 무엇입니까? 압축해야 할 PDF가 많기 때문에 질문하는 것이며, 이를 활용하여 압축 시간을 절약하고 싶습니다 parallel(그림 참조 ls ./*.pdf | parallel "zip {}.zip {}"). 이렇게 하면 많은 zip 파일이 생성되지만 이러한 zip 파일을 하나의 파일로 병합하고 싶습니다. 그런 다음 이 모든 PDF를 여러 파일이 아닌 하나의 zip 파일로 보냅니다.

두 개의 연결된 zip 파일이 유효한 zip 파일을 형성한다고 들었지만 내 테스트에서는 연결된 큰 zip 파일을 여러 파일로 다시 압축 해제할 수 없었습니다. 대부분의 경우 첫 번째 파일만 보관되었습니다. 나는 할 수 있다.

모든 zip 파일을 bigfile.zip.tar로 압축하는 것을 고려했지만 가능하면 이 방법도 피하고 싶습니다. 수신자가 사용할 수 있는 표준 압축 해제 도구로는 이러한 파일을 쉽게 변환할 수 없다고 생각하기 때문입니다. 여러 개의 별도 PDF로 변환됩니다.

답변1

ZIP 파일을 쉽게 연결할 수 없다고 생각합니다.

gzip 파일은 어떻습니까? ZIP 파일과 달리 다음과 같이 연결이 쉬워야 합니다.https://stackoverflow.com/questions/8005114/fast-concatenation-of-multiple-gzip-files. Pigz라는 병렬 gzip을 사용할 수도 있습니다.https://zlib.net/pigz/. 그러나 첫 번째 링크 답변에서 언급했듯이 이렇게 연결된 gzip 파일에서 개별 파일을 추출하는 것은 어렵습니다.

수신자가 tar 파일의 압축을 풀 수 없는 것이 확실합니까? 가장 널리 사용되는 압축 해제 프로그램은 이제 tar 아카이브를 지원합니다. pbzip2의 병렬 처리를 사용할 수 있도록 하는 tar와 pbzip2를 결합하는 흥미로운 옵션도 있습니다.https://linuxconfig.org/how-to-perform-a-faster-data-compression-with-pbzip2.

답변2

기본적으로 zip 파일을 연결하고 싶습니다. zip 파일 형식은 지원되지 않지만 압축 없이는 지원됩니다. 이는 일반적으로 이미 압축된 .pdf 파일로 작업할 때 의미가 있을 수 있습니다.

따라서 다음을 사용하십시오 -0.

zip -0 my.zip *pdf

관련 정보