簡體   English   中英

批處理文件:如何重命名多個目錄的一部分?

[英]batch file: how to rename part of multiple directories?

我是批處理文件的新手,因此我被要求創建一個將重命名多個目錄的一部分的文件。 例如,我需要重命名目錄,如下所示:

 ahhh111\\ rename to aggg111\\ ahhh222\\ rename to aggg222\\ ahhh333\\ rename to aggg333\\ and so on ... 

我以為我可以move通配符與move一起使用,但會不斷出現語法錯誤。
例如, move "*hhh*" "*ggg*"會引發語法錯誤:-(

我該怎么做?

移動/重命名目錄時, move不接受通配符。

但是,您可以使用for /D循環遍歷匹配的目錄並替換子字符串以構建新名稱。 為了使后者循環工作,需要延遲擴展

for /D %%D in ("?hhh*") do (
    set "PDIR=%%~fD" & set "NAME=%%~nxD"
    setlocal EnableDelayedExpansion
    move "!PDIR!" "!NAME:hhh=ggg!"
    endlocal
)

請注意,此方法用目錄名稱中的ggg替換每次出現的hhh

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM