批处理文件将文件名后缀添加到具有条件的文件夹中

批处理文件将文件名后缀添加到具有条件的文件夹中

我正在尝试创建一个批处理文件来自动化一个过程:如果文件名有“A-”前缀,我需要检查文件夹,如果没有,我需要添加它。如果这有帮助的话,我可以像前缀一样命名文件夹!

谢谢你!

答案1

如果它不必是批处理文件,那么您可以使用重命名器。您可以将重命名规则保存为预设,并使用它通过命令行或计划任务自动重命名文件/文件夹。

ReNamer - 前缀

将规则保存为预设(例如A-Preset)后,您就可以使用它通过命令行自动重命名:

ReNamer.exe /rename "A-Prefix" C:\Test

上述规则只是删除现有的前缀,然后将其添加回来。重命名操作后,A-已经有前缀的文件将保持不变。A-

使用 GUI 配置重命名规则并测试它们可能比修改复杂的批处理文件更容易。

答案2

这很简单JREN.BAT - 正则表达式重命名实用程序。JREN 是纯脚本(混合批处理/JScript),可在 XP 及以上版本的任何 Windows 机器上本地运行 - 无需第三方 exe 文件。完整文档嵌入在实用程序中 -JREN /?从命令提示符使用以获取帮助。(jren /??用于分页帮助)

有条件地将前缀添加A-到当前文件夹中的所有文件:

call jren "^" "A-" /fx "A-*"

第一个参数匹配文件名的开头。第二个参数用“A-”替换匹配项(在开头插入“A-”)。/FX 选项排除所有已以“A-”开头的文件

您可以通过添加选项来指定不同的文件夹/P "yourPath"

您可以通过添加 FOR 循环使前缀与父文件夹名称匹配。例如,假设您在“c:\music”中有一个 mp3 文件目录,“\music”下的每个文件夹代表一张专辑,专辑文件夹内的每个 mp3 都是该专辑中的一首歌曲。您可以使用以下命令为每首歌曲添加专辑名称前缀(前提是专辑名称尚不存在):

@echo off
for /d /r "c:\music" %%F in (*) do call jren "^" "%%~nxF-" /p "%%F" /fm *.mp3 /fx "%%~nxF-*"

相关内容