首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >批处理文件:如何重命名多个目录的一部分?

批处理文件:如何重命名多个目录的一部分?
EN

Stack Overflow用户
提问于 2017-08-01 09:32:44
回答 1查看 57关注 0票数 0

我是批处理文件的新手,有人要求我创建一个文件,它将重命名多个目录的一部分。例如,我需要将目录重命名如下:

啊哈111\重命名到and 111\ahhh111 222\重名到and 222\and 333\重名到and 333\等等。

我想我可以在通配符中使用move,但仍然会出现语法错误;

例如,move "*hhh*" "*ggg*"抛出一个语法错误:-(

请问我怎么做?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-01 09:45:56

在移动/重命名目录时,move不接受通配符。

但是,您可以使用循环播放来遍历匹配的目录,并使用子串替换来构建新的名称。要使后者在循环中工作,需要使用延迟膨胀

代码语言:javascript
复制
for /D %%D in ("?hhh*") do (
    set "PDIR=%%~fD" & set "NAME=%%~nxD"
    setlocal EnableDelayedExpansion
    move "!PDIR!" "!NAME:hhh=ggg!"
    endlocal
)

请注意,此方法将hhh的每次出现替换为ggg在目录名中的出现。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45434117

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档