주요 콘텐츠

zip

파일을 ZIP 파일로 압축

설명

zip(zipfilename,filenames)filenames의 내용을 ZIP 파일 zipfilename으로 압축합니다. zip은 폴더에 있는 내용을 재귀적으로 압축합니다. 결과 ZIP 파일에는 현재 폴더를 기준으로 한 filenames의 경로가 포함됩니다. ZIP 파일에는 절대 경로가 저장되지 않습니다.

예제

zip(zipfilename,filenames,rootfolder)는 현재 폴더가 아닌 rootfolder를 기준으로 하여 filenames에 대한 경로를 지정합니다.

예제

zip(___,Password=password,EncryptionMethod=encryptionmethod)는 지정된 비밀번호와 암호화 방법을 사용하여 비밀번호로 보호되고 암호화된 ZIP 파일을 만듭니다. zip은 빈 파일을 암호화하지 않습니다. 위에 열거된 구문에 나와 있는 입력 인수 조합에 추가하여 이러한 인수를 지정할 수 있습니다. (R2024b 이후)

예제

entrynames = zip(___)zipfilename에 포함된 파일의 이름을 포함하는 문자형 벡터로 구성된 셀형 배열을 반환합니다.

예제

예제

모두 축소

파일 membrane.m의 zip 파일을 만듭니다. 현재 폴더에 zip 파일 tmwlogo.zip을 저장합니다.

zip('tmwlogo','membrane.m');

membrane.m 파일과 logo.m 파일을 tmwlogo.zip이라는 파일로 압축합니다.

zippedfiles = zip('tmwlogo.zip',{'membrane.m','logo.m'})
zippedfiles = 1×2 cell
    {'membrane.m'}    {'logo.m'}

현재 폴더에 있는 모든 .m 파일과 .mlx 파일을 backup.zip 파일로 압축합니다.

zip('backup',{'*.m','*.mlx'});

모든 하위 폴더를 포함하여 폴더의 내용을 압축하고, 상대 경로를 zip 파일에 저장합니다.

하위 폴더 mysubfoldermembrane.m 파일과 logo.m 파일을 포함하는 폴더 myfolder를 생성합니다.

mkdir myfolder;
movefile('membrane.m','myfolder');
movefile('logo.m','myfolder');
cd myfolder;
mkdir mysubfolder;
cd ..

모든 하위 폴더를 포함하여 myfolder의 내용을 압축합니다.

zippedfiles = zip('myfiles.zip','myfolder');

thesis.doc 파일과 defense.ppt 파일이 폴더 d:/PhD에 있다고 가정해 보겠습니다. 이러한 파일을 현재 폴더에서 한 수준 위인 thesis.zip으로 압축합니다.

zip('../thesis.zip',{'thesis.doc','defense.ppt'},'d:/PhD');

파일 membrane.m의 ZIP 파일을 만듭니다. 현재 폴더에 ZIP 파일 tmwlogo.zip을 저장합니다. 비밀번호로 파일을 보호하고 암호화 방법을 지정합니다.

zip("tmwlogo","membrane.m",Password="PaSsWoRd123", ...
    EncryptionMethod="zipcrypto");

입력 인수

모두 축소

만들려는 zip 파일의 이름으로, string형 스칼라 또는 문자형 벡터로 지정됩니다. zipfilename.zip 확장자가 없는 경우, MATLAB®.zip 확장자를 추가합니다.

zipfilename은 현재 폴더의 상대 경로나 절대 경로를 포함해야 합니다.

압축할 파일 이름 또는 폴더 이름으로, 문자형 벡터, 문자형 벡터로 구성된 셀형 배열 또는 string형 배열로 지정됩니다.

MATLAB 경로에 있는 파일은 부분 경로를 포함할 수 있습니다. 그렇지 않으면, 파일은 현재 폴더에 대한 상대 경로를 포함하거나 절대 경로를 포함해야 합니다.

폴더는 현재 폴더에 대한 상대 경로나 절대 경로를 포함해야 합니다. UNIX® 시스템에서는 폴더 이름을 ~/(폴더가 현재 사용자의 홈 폴더 아래 있는 경우) 또는 ~username/(폴더가 지정된 사용자의 홈 폴더 아래에 있는 경우)으로 시작할 수 있습니다. 파일 또는 폴더를 지정할 때는 와일드카드 문자 *를 사용할 수 있습니다. 단, MATLAB 경로에서 파일 이름 또는 부분 경로 이름을 해석하려는 용도로는 사용할 수 없습니다.

루트 폴더로, string형 스칼라 또는 문자형 벡터로 지정됩니다. 파일 이름을 상대 경로로 지정하면 루트 폴더가 부모 경로로 사용되어 압축할 파일 이름이 결정됩니다. 기본적으로 루트 폴더는 현재 작업 디렉터리입니다.

R2024b 이후

ZIP 파일의 비밀번호로, string형 스칼라 또는 문자형 벡터로 지정됩니다. 20자 이상의 비밀번호가 권장됩니다.

보안을 강화하려면 비밀번호 같은 민감한 정보를 하드 코딩하지 마십시오. 자세한 내용은 Keep Sensitive Information Out of Code 항목을 참조하십시오.

R2024b 이후

암호화 방법으로, 다음 값 중 하나로 지정됩니다.

  • "aes-256" – 업계 표준 암호화. 이 방법은 대부분의 활용 사례에 권장됩니다.

  • "aes-128" – 이 방법은 AES-256보다 빠르며 필요한 연산 능력과 메모리가 적습니다. AES-128은 강력한 암호화 방법이지만 AES-256과 비교해 무차별 대입 공격 기술에 더 취약합니다.

  • "zipcrypto" – 이 방법은 대부분의 ZIP 아카이브 프로그램과 호환되는 ZIP 파일을 만듭니다. Linux® 환경에서 MATLAB을 실행하는 경우 이 방법을 사용해야 합니다.

zip 함수는 파일의 내용만 암호화하고 파일과 폴더 이름은 암호화하지 않습니다.

출력 인수

모두 축소

압축 파일의 이름으로, 문자형 벡터로 구성된 셀형 배열로 반환됩니다. entrynames의 각 요소는 아카이브를 기준으로 하는 요소의 경로입니다.

제한 사항

  • Linux 시스템에서는 AES-128 및 AES-256 암호화 방법이 지원되지 않습니다.

대체 기능

파일 패널에 있는 파일을 ZIP으로 압축하려면 파일을 선택하고 마우스 오른쪽 버튼을 클릭하여 상황별 메뉴를 연 다음, Zip 파일로 압축을 선택하십시오.

버전 내역

R2006a 이전에 개발됨

모두 확장