我可以接受PowerShell或基于cmd的建议。这就是我想要做的:
我有这个文件夹结构:
C:\Parent\Child01\ - Lots of JPG images
C:\Parent\Child02\ - Lots of JPG images
C:\Parent\Child03\ - Lots of JPG images
依此类推。
我目前正在手动执行的操作:
我将进入Child 01文件夹,并运行此命令从所有图像中剥离元数据
exif -r -all= -ext jpg -ext gif -ext png
我有一个txt文件,每行带有一个关键字。我希望将当前目录(Child01)中的图像替换为在文本文件中输入的名称。
我现在的操作方式是使用带有3列的excel工作表:
Original File Name | New File Name | Rename Command
原始文件名包含所有文件名的内容(我可以通过运行 dir /b /a-d
来获得此文件)
新文件名包含我的关键字
重命名命令是公式=concatenate("ren ",A2,".jpg ",B2, ".jpg")
这可以帮助我生成公式,然后将粘贴从命令行复制到批量重命名。
请问有一些批处理文件或powershell脚本可以帮助我,让我一次完成所有工作吗?
答案 0 :(得分:1)
无需打扰Excel。它将每个.JPG重命名为文件的下一个名称(应该只包含一列(“ NewFileName”(不带扩展名))。如果文件或行用完了,它将停止。
@echo off
setlocal enabledelayedexpansion
<file.txt (
for /f "delims=:" %%a in ('dir /b *.jpg') do (
set "x="
set /p x=
if not defined x goto :eof
ECHO ren "%%a" "!x!%%~xa"
)
)
在删除ECHO
命令以实际启用ren
命令之前,请检查输出。