批量修改、替換文件名


由於需要批量修改文件的文件名稱,今天找了很多的工具。

============================================================

開始的時候用的是批處理命令。網上的例子很多,但是執行了很長時間很糾結還收到很多的限制(有的文件名不允許存在空格)。

我有一個文件夾包含如下文件:
bin 文件夾
JieXiang.BJOA.BLL.User  文件夾
JieXiang.BJOA.BLL.Client 文件夾
JieXiang.BJOA.BLL.Shop 文件夾
JieXiang.BJOA.BLL.Finance 文件夾
JieXiang.BJOA.scc    文件
JieXiang.BJOA.csproj    文件
...
我想用dos批處理命令將上面目錄中所有 JieXiang.BJOA 替換為JX.ERP ,子文件夾里面也有這樣的名稱需要替換,誰能幫我,或者能夠只換一級文件夾也行。

@echo off
echo Copyright by ruin_studio
setlocal enabledelayedexpansion
for /f %%i in ('dir /b') do (
set name=%%i
set newname=!name:JieXiang.BJOA=JX.ERP!
if not "!name!"=="!newname!" ren "!name!" "!newname!"
)
pause
只替換一級文件夾!!

=================================================================

這個方法貌似有點問題

1、修改多個名字開頭重復的文件

就像將:

新建文件1.rar

新建文件2.rar

新建文件3.rar

新建文件4.rar

....

修改為

1.rar

2.rar

3.rar

4.rar

....

以下的代碼,復制粘貼進那個文本文件

---------------------------------------只是分割線-------------------------------

@echo off for /f %%a in ('dir /a:-d /b') do call :ss %%a pause :ss set var=%1 set num=%var:~字數% ren %var% %num% goto :eof pause---------------------------------分割線------------------------------

注意,現在將紅色的“字數”兩個字改成文件名重復字符串的字數,例如“新建文件”就修改為4,“java_教程”就修改為7。保存,改后綴.txt為.bat,運行,搞掂!

如果要改的是文件夾呢?注意到第二句有一個紅色的減號么?去掉了這個減號就變成只是修改文件夾的代碼了。

 

 2、文件名末尾有重復字符串這種狀況也不難,同樣是上面的代碼,不過第六行改為

“set num=%var:~0,-字數%”

字數是從末尾向前數重復的字數。記得看清楚是修改文件還是修改文件夾。

=================================================================

最后在一片帖子上看到了一個軟件。當然很多類似的軟件 下了一份交妖眼的小軟件綠色的。用起來挺好的(僅供學習)。

 

完成了所有的操作。特在此記錄。

http://www.onlinedown.net/soft/47723.htm下載地址


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM