找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 19487|回复: 1

[文件操作] 批处理如何修改文件名中特定字符的位置?

[复制链接]
发表于 2012-11-9 17:11:20 | 显示全部楼层 |阅读模式
如题,例如文件名为“变量1 - 变量2.变量3”,如何能将它重命名为“变量2 - 变量1.变量3”呢,

注意1:“-”前后都有空格。
注意2:变量1、变量2、变量3都是由使用者运行批处理时输入的变量(如果变量1、变量2是空变量则将其设置为“*”,变量3不能输入空变量)。
发表于 2012-11-10 13:05:17 | 显示全部楼层
  1. @echo off
  2. for /l %%a in (1 1 3) do set /p v%%a=变量%%a:
  3. if "%v1%"=="" set "v1=*"
  4. if "%v2%"=="" set "v2=*"
  5. if "%v3%"=="" set "v3=txt"
  6. for /f "delims=" %%i in ('dir/a-d/b "%v1% - %v2%.%v3%"') do (
  7.   for /f "tokens=1,2 delims=-" %%a in ("%%~ni") do (
  8.     set "a=%%a"
  9.     set "b=%%b"
  10.     setlocal enabledelayedexpansion
  11.     set "a=!a:~,-1!"
  12.     set "b=!b:~1!"
  13.     ren "!a! - !b!.%v3%" "!b! - !a!.%v3%" 2>nul
  14.     endlocal
  15.   )
  16. )
  17. pause
复制代码
如果文件名中包含多个"(空格)-(空格)"字符就不能修改了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-19 20:51 , Processed in 0.016414 second(s), 7 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表