首页 > 解决方案 > 如何使用 CMD 重命名批量文件

问题描述

我有一堆我想重命名的 sql 文件,因为它们在文件开头具有架构名称,如下所示:

SCHEMA.TABLE.sql

我想重命名为:

TABLE.sql

不幸的是,当我尝试在我的工作笔记本电脑上执行此操作时,我无法下载任何第三方软件,例如批量重命名实用程序,因此我尝试使用 CMD 执行此操作。

我尝试的是以下内容:

REN SCHEMA.*.sql *.sql

看起来它找到了匹配项,但没有任何变化。所以不知道我需要改变什么,所以我会感谢任何关于我哪里出错的建议。

标签: cmdbatch-rename

解决方案


ren命令解释*目标模式中的*.sql,以便它匹配所有源字符直到最后一个.,这意味着它匹配SCHEMA.TABLE您的样本部分。因此,目标名称等于源名称。

请参阅关于超级用户的这篇精彩文章:Windows RENAME 命令如何解释通配符?


要从文件名中删除该SCHEMA.部分,您需要使用for /F循环

for /F "eol=| tokens=1* delims=." %I in ('dir /B /A:-D-H-S "*.*.sql"') do ren "%I.%J" "%J"

如果有多个 ,这将失败.,例如 in SCHEMA..TABLE.sql

当您想在中使用该代码时,不要忘记加倍-%符号


推荐阅读