Group files with same names
Show older comments
I have a folder with images of different models of cars(20 to be specific). For each car model I have 100 sample images. They are all in a single folder and named:
Audi_01, Audi_02, ...... , Audi_100
Lexus_01, Lexus_02 ...., Lexus_100
...
How can I group same model cars and put them in a new folder.
I tried : copyfile Audi*.jpg Audi
But, for that I have to type and run the command for 20times.
Is there any alternative way or command in matlab?
Answers (1)
Folder = 'D:\Your\Data\Folder';
FileList = dir(fullfile(Folder, '*.jpg'));
FileName = {FileList.name};
Name = unqiue(strtok(FileName, '_'));
for iName = 1:numel(Name)
mkdir(fullfile(Folder, Name{iName}));
match = startsWith(FileName, [Name{iName}, '_']);
Group = FileName(match);
for iGroup = 1:numel(Group)
copyfile(fullfile(Folder, Gorup{iGroup}), fullfile(Folder, Name{iName}));
end
end
Categories
Find more on File Operations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!