[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 bailong360 于 2016-1-31 17:42 编辑
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%i in ('dir /b *.txt') do (
  4.     set "FileName=%%~ni"
  5.     set "FileName=!FileName:.=$ !"
  6.     set "NewName=$"
  7.     for %%j in (!FileName!) do (
  8.         set "TmpName=%%j"
  9.         if not "!TmpName:~-1!"=="$" (
  10.             for /l %%k in (0 1 9) do set "TmpName=!TmpName:%%k=%%k《!"
  11.             for /l %%k in (0 1 9) do set "TmpName=!TmpName:《%%k=%%k!"
  12.             set "NewName=!NewName!.!TmpName!》"
  13.         ) else set "NewName=!NewName!.!TmpName:~0,-1!"
  14.     )
  15.     echo ren "%%~nxi" "!NewName:$.=!%%~xi"
  16. )
  17. pause
复制代码
9楼的第三方解法多方便,又迅速
确认无误后将echo去掉
  1. @for /f "delims=" %%i in ('dir /a-d /b *.txt^|ssed -R "s/([0-9.]+)(.*?)(\.txt)/\"\0\" \"\1《\2》\3\"/g"') do @ren %%i
复制代码
来个ssed的
===========
话说,LZ你的文件是真的没有后缀还是后缀被你省略掉了??

TOP

返回列表