WinRAR 에서처럼 특정 파일 형식이 7-zip으로 압축되는 것을 선택적으로 방지 할 수있는 방법이 있습니까?
거대한 폴더 (수 기가 바이트)를 압축하려고하는데 이미 압축 된 파일 (예 : ZIP 파일)을 다시 압축하지 않으려합니다. 압축하지 않고 저장해야합니다.
WinRAR 에서처럼 특정 파일 형식이 7-zip으로 압축되는 것을 선택적으로 방지 할 수있는 방법이 있습니까?
거대한 폴더 (수 기가 바이트)를 압축하려고하는데 이미 압축 된 파일 (예 : ZIP 파일)을 다시 압축하지 않으려합니다. 압축하지 않고 저장해야합니다.
답변:
예, 동일한 7-Zip 아카이브 내에서 다른 파일에 대해 다른 압축 방법을 사용할 수 있습니다.
-m
매개 변수 와 함께 7-Zip 명령 행 버전 을 사용하여 방법을로 지정하십시오 Copy
. 이는 압축이 없음을 의미합니다.
예 :
7za a -m0=Copy tmp7.7z *.txt
자세한 정보는 -m (압축 설정 방법) 스위치를 참조하십시오 .
-m0=Copy
작동하지 않습니다 시도 -mx=0
.
zip 파일이 있고 폴더에 압축되지 않은 txt 파일이 있다고 가정합니다.
첫 번째 단계 는 다음 명령을 사용하여 압축 압축 txt 파일을 작성하는 것입니다.
-m을 사용하여 압축 수준을 설정할 수 있습니다. 이는 사용하는 압축 방법에 따라 다릅니다.
여기서는 기본 압축 만 가정합니다
7z a compressed.7z *.txt -r
이제 압축됩니다.
두 번째 단계 는 이미 압축 된 파일을이 아카이브로 복사하거나 새 아카이브를 만드는 것입니다.
7z u compressed.7z -u!update.7z -mx0 *.zip
업데이트 명령에 대한 자세한 설명이 여기에 있습니다.
그래픽 인터페이스를 자유롭게 사용할 수있는 경우 다음과 같은 방법으로 업데이트를 수행 할 수 있습니다.
압축하지 않은 파일 형식 (.zip 파일)을 다시 압축하지 않고 저장하여 디렉터리를 빠르게 압축하는 PowerShell 스크립트를 만들었습니다. 7zip의 명령 행 인터페이스를 사용하고 파일 이름 확장자를 사용하여 주어진 파일을 압축하거나 저장할 것인지 결정합니다.
https://gist.github.com/ivanatpr/5dea086172eab573ba71 에서 스크립트를 찾을 수 있습니다.
기술적으로 압축 파일은 엔트로피 한계와 같은 것으로 압축되지 않습니다. 세부 사항을 잊어 버렸지 만 가장 많이 본 것은 2 % 미만입니다.
대부분의 우수한 컴프레서는 압축을 확인하고 압축 할 수없는 파일을 압축하여 저장하면 오버 헤드가 발생하고 크기가 커지기 때문에 압축하지 않아도됩니다.
물론 처음부터 파일을 보는 작업과 시간이 있습니다.
다른 답변에서 논의했듯이 파일 세트에서 여러 패스를 수행하는 것이 아마도 최상의 솔루션이 될 것이며 쉽게 스크립트 가능합니다.
7z 아카이브를 작성하고 압축 파일을 한 번에 모두 추가 한 다음 사전 압축 파일을 비 압축 데이터로 추가하십시오. (압축 가능 항목은 아카이브의 시작 부분에 있고 압축 불가능한 항목은 모두 끝이므로이 방법으로 수행합니다. 연속적이므로 드라이브에서 더 빨리 스트리밍됩니다)
( '압축 ...'을 너무 많이 사용했습니다!)