오늘은 MATLAB을 사용하여 파일을 압축하는 방법에 대해 소개하려 합니다.
MATLAB 에서 파일을 압축하기 위해서는 다양한 함수가 있는데~
zip, unzip, gzip , gunzip, tar, untar 등과 같은 함수가 있습니다.
압축방법은 아래 매뉴얼에 나와 있는 바와 같이~
http://kr.mathworks.com/help/matlab/ref/zip.html
zip 파일명을 넣고 뒤에 압축하고자 하는 파일 명들을 셀 타입으로 넣으면 됩니다.
zip('backup.zip',{'*.m','*.mat'});
OR
zip('backup.zip',{'abc.m','aaa.mat'});
그런데 파일이 현재 폴더에 있다면 위와 같은 방식으로 하면 되는데~
저 같은 경우에는 파일이 여러 군데로 분산되어 있는 경우가 많이 있습니다.
이런 경우에는 사용하는 파일을 하나 하나 찾아서 압축파일에 추가하려면 매우 불편하고 실수 할 수도 있는 일이죠~
이런 경우에는 아래 소개했던 MATLAB Dependency Report 를 사용하는 게 좋습니다.
http://iamaman.tistory.com/255
위 포스팅에서는 MATLAB Dependency Report 라는 새로운 창을 통해 확인 하는 거지만~
depfun('filename') 이라는 함수를 사용하면 filename 에서 사용하는 함수들의 Dependency 를 다 찾아 줍니다.
그런데 최신 매뉴얼을 확인 하니 아래 주소에서 matlab.codetools.requiredFilesAndProducts() 를 사용하라고 하더군요.
http://kr.mathworks.com/help/matlab/matlab_prog/identify-dependencies.html#f7-58063
그럼 이제 matlab.codetools.requiredFilesAndProducts() 를 사용해서 Dependency 를 찾으면 되는거고~
Zip() 함수를 사용해서 압축을 하면 되겠네요~ 현재 제가 샘플로 사용할 convTest_20151018.m 파일을 통해 한번 실습 해보죠~
위 포스팅에서 소개했던 MATLAB Dependency Report (종속성 리포트)를 확인 해보니 convTest_20151018.m 파일은 conv_m.m 파일을 사용 중에 있습니다.
convTest_20151018.m 파일에 대해 정상적으로 압축하는 명령은 다음과 같습니다.
[fList, pList] = matlab.codetools.requiredFilesAndProducts('convTest_20151018.m');
zip('test.zip',fList)
matlab.codetools.requiredFilesAndProducts() 함수를 통해 convTest_20151018.m 파일에서 사용하는 모든 파일들이 fList 라는 셀 타입에 저장 되고~
이를 zip() 함수를 통해 압축하는 겁니다.
test.zip 파일을 확인 해보면~
convTest_20151018.m, conv_m.m 파일을 들어 있는 것을 확인 할 수 있습니다.
'programming language > MATLAB' 카테고리의 다른 글
MATLAB finish.m 파일 설정 방법 (0) | 2016.08.08 |
---|---|
MATLAB bsxfun(The binary singleton expansion function) (0) | 2016.02.14 |
MATLAB Exponential random variable generation (14) | 2016.01.13 |
MATLAB을 사용한 파일 내용 검색하기 grep() (0) | 2015.10.26 |
MATLAB Symbolic Math Toolbox C code generation (0) | 2015.10.16 |
MATLAB Convolution index 계산 (2) | 2015.10.16 |
MATLAB strjoin 함수를 사용한 string 붙이기 (0) | 2015.10.12 |
MathJax 를 활용한 MATLAB 수식 입력 (0) | 2015.10.08 |
댓글