[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 如何实现删除文件夹及子文件夹中,文件名称中的括号及空格

  1. @echo off
  2. for /f "delims=" %%a in ('dir/b') do (
  3.     set $=%%a
  4.     setlocal enabledelayedexpansion
  5.     for %%b in (^) ] } ) 】) do (
  6.         if "!$:*%%b=!" NEQ "%%~xa" (
  7.             if "!$:*%%b=!" NEQ "!$!" ren "!$!" "!$:*%%b=!"
  8.         ) else (
  9.             for /f "delims=([{(【" %%c in ("!$!") do (
  10.                 ren "!$!" "%%c%%~xa"
  11.             )
  12.         )
  13.     )
  14.     endlocal
  15. )
  16. setlocal enabledelayedexpansion
  17. for /f "tokens=*" %%i in ('dir/b') do (
  18. set fn=%%i
  19. set fn=!fn: =!
  20. ren "%%i" !fn!
  21. )
  22. pause
复制代码
这个在网上找回来的,只是对当前目录下的文件名称进行更改。不知道如何实现对子文件下的文件进行操作

  1. @echo off
  2. for /f "delims=" %%I in ('dir/s/b/ad^|sort/r') do (
  3. for /f "tokens=1-9 delims={}[]()()【】{} " %%a in ("%%~nI") do (
  4. echo,ren "%%~fI" "%%a%%b%%c%%d%%e%%f%%g%%h%%i"
  5.                                                                     )
  6.                                                    )
  7. for /f "delims=" %%J in ('dir/s/b/a-d') do (
  8. for /f "tokens=1-9 delims={}[]()()【】{} " %%a in ("%%~nxJ") do (
  9. echo,ren "%%~fJ" "%%a%%b%%c%%d%%e%%f%%g%%h%%i"
  10.                                                                      )
  11.                                             )
  12. pause
复制代码

TOP

返回列表