重命名MATLAB中包含许多文件的文件夹会花费太多时间

时间:2018-06-28 18:07:56

标签: matlab batch-rename

我使用MATLAB重命名了约100个文件夹。我知道:

movefile(old_folder_path,new_folder_path)

可以工作。但是这次至少要花大约1分钟才能重命名一个文件夹。我假设我的每个文件夹都包含〜20000张图像,总共约1G。

但是手动重命名文件夹与重命名空文件夹一样快。有人可以告诉我发生了什么,还有其他解决方法吗?

1 个答案:

答案 0 :(得分:3)

如果这在shell中要快得多,请使用shell命令:

if ispc
   cmd = 'move';
else
   cmd = 'mv';
end
cmd = [cmd,' ',old_folder_path,' ',new_folder_path];
system(cmd);

MATLAB命令system在默认Shell中执行Shell命令。在Windows上,此变量为cmd.exe;在类似UNIX的系统(Mac和Linux)上,变量是由$MATLAB_SHELL$SHELL环境变量指定的(按顺序检查,如果都不存在则使用{ {1}}。

此处执行的命令等效于OP所谓的“手动重命名”,因为任何文件管理器GUI(例如Windows资源管理器)都将运行相同的基础系统功能。

我的猜测是MATLAB会创建新目录并逐个移动文件。