今天改CSAPP作业,下载了一大堆文件,需要自动分出学生交的附件,写了以下程序删除除附件外的其他文件:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
clear all; UpFilePath='F:\Learn\研一下\CSAPP\Lab0\bulk_download\第一次编程练习'; %最上层的地址 UpFileList=dir(UpFilePath); upff=1; for uprr=1:length(UpFileList) %得到顶层地址内部的文件夹名,存放在upfileFolder文件夹中,例如一个视频集文件有6个不同的类别,这一步就是得到这六个不同类比的名字 if(UpFileList(uprr).isdir==1&&~strcmp(UpFileList(uprr).name,'.')&&~strcmp(UpFileList(uprr).name,'..')) upfileFolder{upff}=[UpFileList(uprr).name]; upff=upff+1; end end for uprr=1:(upff-1) %轮询每一个类别的文件夹 FilePath=[UpFilePath,'\',upfileFolder{uprr}]; %确保输入正确的地址 FileList=dir(FilePath); %Filelist为单个类别的文件夹地址 ff=1; cd(FilePath);%到对应的文件目录 for rr=1:length(FileList) %得到单个类别的文件夹内部的视频文件名,存放在fileFolder中 if(~strcmp(FileList(rr).name,'提交作业的附件')&&~strcmp(FileList(rr).name,'.')&&~strcmp(FileList(rr).name,'..')) if(FileList(rr).isdir==0) delete(FileList(rr).name); else rmdir(FileList(rr).name); end end end end %save 1.txt -ascii output |