我目前有一大堆包含照片的目录。这些目录当前以的格式命名yymmdd_text
。我想将它们全部重命名为yyyy-mm-dd Text
(注意大写text
)。
我尝试使用创建工作流,Automator
但是rename Finder items
那里的功能非常有限。
将下面的代码保存到文本文件中(例如“ renameDir.pl”)。然后打开文件夹所在的终端窗口,然后运行脚本renameDir.pl 14*
(或与要重命名的文件夹匹配的任何模式)。
#!/usr/bin/perl
use strict;
use warnings;
use File::Copy;
foreach my $dir (@ARGV) {
(my $year, my $month, my $day, my $text) = ($dir =~ m/^(\d\d)(\d\d)(\d\d)_(.*)/);
if ($year && $month && $day && $text) {
my $Text = ucfirst($text);
my $newDir = "20$year-$month-$day $Text";
print "Moving \"$dir\" to \"$newDir\"\n";
move($dir, $newDir) or die "Unable to rename $dir:\n$!\n";
}
else {
warn "Unable to parse $dir\n";
}
}
假定所有新文件夹名称都希望以20xx(而不是19xx)等年份开头,但是您可以根据需要编辑脚本以进行处理。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句