我想跑图像魔术师可以identify
选择一次扫描多个文件夹中的所有图像。
它应该以类似于下面的语法运行,但我想将其全部记录到同一个日志文件中,如果可能的话,我也想为此创建一个批处理文件。
magick identify -verbose "D:\Images" >log.txt 2>&1
答案1
你可以运行为/F循环目录命令从源目录(D:\Images)获取每个文件的完整显式路径并递归遍历它。
这实际上是将每个完整的显式路径和文件名magick
逐一传递给命令,然后将它们附加到日志文件以供稍后查看。
下面提供了其他资源和示例命令,以及使用所有这些内容的适用语法,供您使用。这对您来说应该是一个很好的起点。
命令行示例
笔记: D\Images\*.*"
您可以替换为或任何文件扩展名的部分
D\Images\*.jpg"
以仅列出那些特定的文件扩展名,并且您也可以F:\OtherFolder\*.png"
根据需要将其更改为或任何内容,以便可以在下面提供的示例部分中指定不同的文件夹路径和/或文件扩展名。
FOR /F "DELIMS=" %A IN ('DIR /A-D /S /B "D:\Images\*.*"') DO magick identify -verbose "%~A">>D:\logfile.txt
批处理脚本示例
笔记: 我编写了这个脚本,以便您可以轻松地根据需要设置变量,以便在每次运行中相应地进行适应。
@ECHO ON
SET Source=D:\Images
SET Ext=*.jpg
SET LogFile=D:\logfile.txt
FOR /F "DELIMS=" %%A IN ('DIR /A-D /S /B "%Source%\%Ext%"') DO magick identify -verbose "%%~A">>"%LogFile%"
GOTO EOF
更多资源
答案2
以下一行代码(适用于 Linux,但可能也适用于使用 Windows PowerShell 的 Windows 10)为您提供了底层目录中所有 jpg 图像及其详细信息的递归列表:
find . -name "*.jpg" -exec identify {} \;