1
我想搜索所有.doc
文件的目录和子目录,并使用MatLab将它们全部压缩到一个文件中。如果我使用zip()
matlab函数,它只允许一个根目录。 ZIP(ZIPFILENAME, FILES, ROOTDIR)
。MATLAB搜索和邮政编码
1)如何递归搜索子目录?
2)如何将所有zip文件添加到一个文件夹中?
是否最好搜索并将所有.doc
文件移动到临时文件夹中,然后从该位置压缩它们?
我想搜索所有.doc
文件的目录和子目录,并使用MatLab将它们全部压缩到一个文件中。如果我使用zip()
matlab函数,它只允许一个根目录。 ZIP(ZIPFILENAME, FILES, ROOTDIR)
。MATLAB搜索和邮政编码
1)如何递归搜索子目录?
2)如何将所有zip文件添加到一个文件夹中?
是否最好搜索并将所有.doc
文件移动到临时文件夹中,然后从该位置压缩它们?
首先,使用dos(...)
为所有.doc文件,包括所有子目录(选项/S
),但仅显示文件名,没有附加信息(选项/B
)。所述第一输出参数是返回的状态,第二输出参数是在命令行上返回的字符串:
[~, filenamesFromDos] = dos('dir *.doc /B/S');
其次,从该命令作为单元阵列中提取文件名。文件名是由换行(\n
)炭和路径分隔可能包含空格,从而:
filenames = textscan(filenamesFromDos,'%s','Delimiter','\n','Whitespace','');
filenames
那么一个<1x1 cell>
,包含文件名的字符串的<Nx1 cell>
。有了这个<Nx1 cell>
我们可以调用内置MATLAB函数:
zip('zip_file.zip',filenames{1});
完成。
你为什么要在MATLAB中压缩文件?这有点奇怪。 – chaohuang 2012-07-09 18:04:12
是的,这更适合bash脚本。 – Squazic 2012-07-09 18:21:29
我希望使用一个simulink块,它将使用一个回调到.m脚本来收集所有模型报告doc文件并将它们压缩到一个文件夹中。此外,我不使用Linux我在Windows PC上 – user1469906 2012-07-09 18:27:28