我需要通过终端或MATLAB获取文件夹中的所有.html文件,但问题在于这些.html文件没有.html扩展名明确在文件中。在这种情况下,我也试图捕获.IGF文件,但没有明确的扩展名。通过没有明确扩展名的终端获取目录中的所有html文件
我写了一个脚本,可以在MATLAB中做到这一点,调用unix函数基本上循环文件夹中的所有文件,读取它们并获取它们的扩展名,最后从文件夹中删除它们。
我的代码成功地做到了,但它需要很长时间(大概一个小时)。文件夹中有大约12000个文件,但我正在寻找一些更具时间效率的东西,尽管尺寸很大。我确信终端中有两三行的捷径。
close all; clear all;
Z=dir('./');
file_number=length(Z)-2;
stats=[];
stats2=[];
for i=1:file_number
file_name=Z(i+2).name;
command=['cat ' file_name ' | grep GIF'];
stats=~unix(command);
command2=['cat ' file_name ' | grep html'];
stats2=~unix(command2);
if stats==1 || stats2==1
command3=['rm ' file_name];
unix(command3);
end
if rem(i,100)==0
disp(i);
end
end
另一个重要的细节: 我的文件没有在他们的名字的.html或.gif。我知道他们有这种类型,因为他们的幻数(通过右键单击并查看文件属性)。我的文件名称是“1”,“2”,...,“7”,...“11498”。他们理想的是“1.html”,“2.gif”,“3.jpg”等,但他们不是。
现在你正在寻找包含'html'作为.html文件的文件。那是你想要做的吗?检查MIME类型怎么办? – Mateusz 2013-05-11 21:35:06