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

[文件操作] 批处理ren命令怎样为文件名添加指定字符串?

[复制链接]
发表于 2014-10-13 10:22:59 | 显示全部楼层 |阅读模式
求助给位大神:比如我有N个文件,如,想要在后面加上字符“abc”,用命令ren *.xls *abc.xls 变成了,请问大家如何解决?thanks!!!
发表于 2014-10-13 11:03:14 | 显示全部楼层
本帖最后由 jian123ch 于 2014-10-13 16:51 编辑
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /r %%i in (*.txt) do (
  4. set strfn=%%~ni%%~xi
  5. set strfna=!strfn:~0,-4!
  6. set strfnb=!strfn:~-4!
  7. set strfnew=!strfna!abc!strfnb!
  8. ren %%i !strfnew!
  9. )
复制代码
发表于 2014-10-13 13:16:15 | 显示全部楼层
  1. @echo off & setlocal enabledelayedexpansion
  2. set str=abc
  3. for /f "delims=" %%a in ('dir /b *.xls') do ren "%%a" "%%~na!str!%%~xa"
  4. pause
复制代码
发表于 2014-10-13 15:47:08 | 显示全部楼层
回复 2# jian123ch


    你这个代码根本没有测试过吧?
发表于 2014-10-13 15:57:11 | 显示全部楼层
回复 3# 522235677


不需要变量延迟扩展
  1. @echo off
  2. set "str=abc"
  3. for /f "delims=" %%i in ('dir /b *.xls') do ren "%%i" "%%~ni%str%%%~xi"
复制代码
发表于 2014-10-13 16:21:57 | 显示全部楼层
回复 4# DAIC

我测试过,不过是将*.xls换成了*.txt来测试的。
发表于 2014-10-13 16:35:16 | 显示全部楼层
回复 6# jian123ch


你在什么操作系统里面测试的?
据我说知,ren命令的第二个参数不能是完整路径名。
发表于 2014-10-13 16:54:28 | 显示全部楼层
本帖最后由 jian123ch 于 2014-10-13 17:02 编辑

回复 7# DAIC

您说的没错,我是直接在命令行下,直接敲入最后一句来验证ren 是否支持变量名。所以没有全部运行,现在已把原来的代码改了。

不过可以优化一下,优化后的代码为:

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /r %%i in (*.txt) do (
  4. set strfn="%%~ni"abc"%%~xi"
  5. ren %%i !strfn!
  6. )
复制代码
发表于 2014-10-13 17:25:37 | 显示全部楼层
回复 8# jian123ch


    ren的第一个参数也需要加双引号,否则无法处理包含空格的文件名。
发表于 2014-10-13 17:40:27 | 显示全部楼层
回复 5# DAIC


    开始我也是这么想,后来发现有问题呢,加延迟就好了
发表于 2014-10-13 17:43:10 | 显示全部楼层
回复 10# 522235677


    有什么问题?
发表于 2014-10-13 17:54:16 | 显示全部楼层
回复 9# DAIC

谢谢指点。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-18 15:32 , Processed in 0.018272 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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