本文介绍如何使用Matlab批量修改指定文件夹下的文件名,通过结合strcat、dir和eval等指令,实现文件名中特定字符的替换操作。实验展示了操作前后的文件名变化。
目标说明
批量处理指定文件夹下文件名,替换文件名中部分字符。
使用指令说明
strcat
strct是将不同字符串合并成同一个字符串
str1="debug"; dir_i=10; newstr= strcat(str1, '_', int2str(dir_i));
dir
dir是获取文件信息,本文主要使用dir获取文件夹下文件名。
Dirs = dir(dataDirStr1);
eval
eval是执行matlab指令流。
实验
实验前文件名
代码
clc; clear all; % dataDirStr1 = "E:\develop\open_source\data"; cmd=strcat("cd ", dataDirStr1); eval(cmd); % 获取文件个数 Dirs = dir(dataDirStr1); dirsNum = length(Dirs); for dir_i=3:dirsNum oldname = Dirs(dir_i).name; newname = strcat(oldname(1:22), '_', int2str(dir_i-2)); % windows重命名命令:rename oldname newname eval(['!rename ', oldname, ' ', newname]); end
实验后文件名