英文:
Get date from filename to change date in Meta Info of mp4 file with Exiftool
问题
我正在尝试更改拍摄电影的日期。由于某种必要原因,我更改了格式,信息丢失了。我搜索了一下,想尝试使用exiftool。
示例文件名:PXL_20220113_173346874.mp4
我尝试的第一段代码:
exiftool.exe "-DateTimeOriginal<${filename;s/PXL_(\d{8})_*.mp4}" -d "%Y%m%d"
而不是*,我尝试了不同的东西,但总是出现错误:未指定文件。
后来我继续阅读,意识到我可能必须使用CreateDate。所以下一段代码:
exiftool.exe -api QuickTimeUTC "-CreateDate<Filename" PXL_20220525_132344600.mp4
这个代码有效,但只适用于一个特定的文件。我该如何修改代码,使其适用于文件夹中的所有文件?我看不到这一点....
谢谢
英文:
I'm trying to change the date of when my movies were taken. The information got lost as I changed the format (for a neccessarry reason). I googled and want to try with exiftool.
Example Filename: PXL_20220113_173346874.mp4
First code I tried:
exiftool.exe "-DateTimeOriginal<${filename;s/PXL_(\d{8})_*.mp4}" -d "%Y%m%d"
Instead of * I tried different things but always got the error: No file specified.
Reading further I realised I might have to use CreateDate. So next code:
exiftool.exe -api QuickTimeUTC "-CreateDate<Filename" PXL_20220525_132344600.mp4
That worked but only for one specific file. How can I change the code that it works for all files in the folder? I don't see it....
Thanks
答案1
得分: 0
你可以将任意数量的单个文件和目录路径传递给exiftool,仅受命令行长度限制。
例如:
exiftool.exe -api QuickTimeUTC "-CreateDate<Filename" /path/to/Directory1/ /path/to/Directory2/ /path/to/File1.mp4 /path/to/File2.mp4
将处理Directory1和Directory2中的所有文件(但不包括子目录,详见下文),以及单独的文件File1.mp4和File2.mp4。
如果需要递归处理子目录,请添加-r
(-recurse
)选项。如果需要限制处理特定文件类型,例如MP4文件,请添加-ext
(-extension
)选项,即使用-ext mp4 -ext mov
只会处理MP4和MOV文件。在递归时无法使用星号作为通配符。请参阅Exiftool常见错误#2。
此命令会创建备份文件。添加-overwrite_original
选项以阻止创建备份文件。
英文:
You can pass exiftool any number of individual files and directory paths, limited only by the command line length.
For example
exiftool.exe -api QuickTimeUTC "-CreateDate<Filename" /path/to/Directory1/ /path/to/Directory2/ /path/to/File1.mp4 /path/to/File2.mp4
will process all the files in Directory1 and Directory2 (but not in subdirectories, see below), as well as the individual files File1.mp4 and File2.mp4.
If you need to recurse into subdirectories, add the -r
(-recurse
) option. If you need to limit processing to specific file types, such as MP4s, then add the -ext
(-extension
) option, i.e. using -ext mp4 -ext mov
will only process MP4 and MOV files. You cannot use an asterisk as a wildcard when recursing. See Exiftool Common Mistake #2
This command creates backup files. Add the -overwrite_original
option to suppress the creation of backup files.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论