[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
  1. @echo off&SetLocal EnableDelayedExpansion
  2. set c=0123456789abcdefghijklmnopqrstuvwxyz
  3. set /p strtemp1=要替换的文件名字符串(可替换空格):
  4. set /p strtemp2=替换后的文件名字符串(删除则回车):
  5. for /f "delims=" %%i in ('dir /s /b') do (
  6.   set "f=%%~nxi"
  7.   set "f1=!f:%strtemp1%=%strtemp2%!"
  8.   if not "%%i"==%0 (
  9.     if not "!f!"=="!f1!" (
  10.        ren "%%i" "!f1!"
  11.     )
  12.   )
  13. )
  14. pause
复制代码
微信:flashercs
QQ:49908356

TOP

本帖最后由 flashercs 于 2020-2-3 23:24 编辑

回复 6# ChenCheChe
  1. @echo off&SetLocal EnableDelayedExpansion
  2. set c=0123456789abcdefghijklmnopqrstuvwxyz
  3. set /p strtemp1=要替换的文件名字符串(可替换空格):
  4. set /p strtemp2=替换后的文件名字符串(删除则回车):
  5. for /f "delims=" %%i in ('dir /a-d /s /b') do (
  6.   set "f=%%~ni"
  7.   set "f1=!f:%strtemp1%=%strtemp2%!"
  8.   if not "%%i"==%0 (
  9.     if not "!f!"=="!f1!" (
  10.        ren "%%i" "!f1!%%~xi"
  11.     )
  12.   )
  13. )
  14. pause
复制代码
暂时只支持替换文件名,不支持文件夹名.
微信:flashercs
QQ:49908356

TOP

回复 9# ChenCheChe

重命名目录比较麻烦是因为一旦目录名改变了,那么该目录下的文件就找不到了,所以得用递归.
现在这脚本可以 替换文件名和目录名了.
以前的脚本就放弃吧.
  1. REM 功能:替换文件名和目录名(包含子目录)的指定字符串
  2. @echo off
  3. set "dir=%~1"
  4. if not defined dir set "dir=%~dp0"
  5. REM 要替换的文件名字符串(可替换空格):
  6. set "strSrc=."
  7. REM 替换后的文件名字符串(删除则留空):
  8. set "strDst= "
  9. call :recurse "%dir%"
  10. pause
  11. exit /b %errorlevel%
  12. :recurse
  13. setlocal
  14. 2>nul,pushd %1||goto end
  15. REM 先处理文件-preorder
  16. for %%A in (*) do (
  17.   if not "%%~fA"==%0 (
  18.     call :renfso "%%A"
  19.   )
  20. )
  21. REM 再处理目录-inorder
  22. for /d %%D in (*) do (
  23.   call :recurse "%%D"
  24.   call :renfso "%%D"
  25. )
  26. popd
  27. :end
  28. endlocal
  29. exit /b
  30. :renfso
  31. set "baseName=%~n1"
  32. call set "newBaseName=%%baseName:%strSrc%=%strDst%%%"
  33. if not "%newBaseName%"=="%baseName%" ren %1 "%newBaseName%%~x1"
  34. exit /b
复制代码
微信:flashercs
QQ:49908356

TOP

回复 13# ChenCheChe


    文件夹最后一个.也是算扩展名的
微信:flashercs
QQ:49908356

TOP

返回列表