Perl exiftool仅处理正则表达式匹配的源文件

Perl exiftool仅处理正则表达式匹配的源文件,perl,photo,exiftool,organizer,Perl,Photo,Exiftool,Organizer,我正在使用exiftool将从相机拍摄的照片重命名并组织到指定的目标目录 如何使用regex指定输入源文件名 例如: 我有一个包含以下两个文件的目录: IMG_20160716_121830.jpg IMG-20160716-121830-WA0004.jpg 我只想处理IMG_20160716_121830.jpg,正如user@Borodin所提到的,在您的示例中,您只需要具有下划线而不是破折号的文件。在这种情况下,您只需搜索带有下划线的文件 但是,如果这是一个输入错误或需要递归(通配符不

我正在使用
exiftool
将从相机拍摄的照片重命名并组织到指定的目标目录

如何使用regex指定输入源文件名

例如:

我有一个包含以下两个文件的目录:

IMG_20160716_121830.jpg
IMG-20160716-121830-WA0004.jpg

我只想处理IMG_20160716_121830.jpg

,正如user@Borodin所提到的,在您的示例中,您只需要具有下划线而不是破折号的文件。在这种情况下,您只需搜索带有下划线的文件

但是,如果这是一个输入错误或需要递归(通配符不能与exiftool的
-r
递归选项一起使用,请参见),那么您可以使用exiftool的
-if
选项对文件名进行正则表达式匹配。在本例中,您可以添加如下内容:
-如果“$filename=~/IMG-\d{8}-\d{6}\.jpg/”


命令(如果在Mac/linux上,则将双引号更改为单引号)

正如user@Borodin所提到的,在您的示例中,您只需要具有下划线而不是破折号的文件。在这种情况下,您只需搜索带有下划线的文件

但是,如果这是一个输入错误或需要递归(通配符不能与exiftool的
-r
递归选项一起使用,请参见),那么您可以使用exiftool的
-if
选项对文件名进行正则表达式匹配。在本例中,您可以添加如下内容:
-如果“$filename=~/IMG-\d{8}-\d{6}\.jpg/”


命令(如果在Mac/linux上,则将双引号更改为单引号)

你能展示一下你的命令行吗?事实上我没有找到任何关于如何开始使用这些命令行的线索。我参考了exiftool命令示例和可用选项,我可以看到基于输入帧输出和控制扩展的可能选项。您需要正则表达式做什么?单个文件名不是模式。好的。显示将用于错误处理这两个文件的命令。在您给出的示例中,您只需检查名称是否包含下划线<代码>\uu就是这种模式。你能展示一下你的命令行吗?事实上,我没有找到任何关于如何从这些开始的线索。我参考了exiftool命令示例和可用选项,我可以看到基于输入帧输出和控制扩展的可能选项。您需要正则表达式做什么?单个文件名不是模式。好的。显示将用于错误处理这两个文件的命令。在您给出的示例中,您只需检查名称是否包含下划线<代码>\uu就是这种模式。