标题: [文件操作] 批处理如何批量给文件名添加指定后缀? [打印本页]
作者: game113 时间: 2016-1-7 10:12 标题: 批处理如何批量给文件名添加指定后缀?
我有一些文件,都放置在某文件夹下,
类似这种:
LF-WD24D.024
YM-YR36D.001
YM-YR36D.002
YM-YR36D.003
CX-MD8D.007
CX-SB36D.010
数量很多,大约有几百个。
现在我想批量给这些文件名增加一个后缀名:SOR
LF-WD24D.024.SOR
YM-YR36D.001.SOR
YM-YR36D.002.SOR
YM-YR36D.003.SOR
CX-MD8D.007.SOR
CX-SB36D.010.SOR
我已经编写一个简单的批处理,但有2个问题:
一、有些文件名没有修改
二、有些文件会增加2个后缀名,如 SB-YM36D.022.SOR.SOR
我的想法是修改时判断文件名,如果已经有 SOR 后缀,则不进行处理。
处理完成后再进行一次核对,没有修改成功的再进行一次处理。
请帮我优化下我的代码,先谢谢大家了。
- @echo off & setlocal enabledelayedexpansion
-
- Rem 启用延迟变量扩展
- echo 当前目录是:%cd%
- pause
-
- echo 更改当前目录下的文件加后缀名SOR
-
- for /r %cd% %%i in (*) do (
- set file=%%i
- if %%i neq !file! (move "%%i" "%%i.SOR")
- )
-
- echo.
- echo 改名完成!
-
- echo 按任意键退出。
- pause
复制代码
作者: 回家路上 时间: 2016-1-7 10:26
set file=%%i
if %%i neq !file!
/(ㄒoㄒ)/~~哭了
作者: flyinnet9 时间: 2016-1-7 10:39
- for /f "delims=" %%a in ('dir /a-d /b ^|findstr /i /v "sor$"') do ren "%%a" "%%a.sor"
复制代码
作者: game113 时间: 2016-1-7 10:59
谢谢 flyinnet9 了。
真是热心的高手。
作者: 依山居 时间: 2016-1-7 11:02
你需要的是ant Renamer
作者: game113 时间: 2016-1-7 11:35
回复 5# 依山居
谢谢,
我使用了,这个软件不错。
但由于这个批处理不是给我用的,是给一个对电脑不熟悉的人使用的,
所以我考虑用批处理比较合适。
作者: game113 时间: 2016-1-7 11:40
备注:
由于运行这个批处理后,这个批处理文件本身也会被添加一个后缀名,
因此,我把这个批处理命名为 ”批量加sor后缀名.bat“,里面有sor这个字符串。
并将
for /f "delims=" %%a in ('dir /a-d /b ^|findstr /i /v "sor$"') do ren "%%a" "%%a.sor"
改为
for /f "delims=" %%a in ('dir /a-d /b ^|findstr /i /v "sor"') do ren "%%a" "%%a.sor"
主要是去掉了sor$这个表达式中的$,这个$表示文件名最后的3个字符是sor
我的代码意思是只要文件名中有sor这个字符串,就不再进行修改了。
复制代码
作者: /zhqsystem/zhq 时间: 2016-1-7 12:24
if /i not "%%~xi"==".sor" if /i not "%%~nxi"=="%~nx0" echo,%%i
作者: ctgwglzc 时间: 2018-10-5 19:22
回复 3# flyinnet9
请问,如果想给固定后缀的文件,统一改一个文件名后缀(非扩展名),怎么做?
比如
001.rar
abc103.rar
somebod.rar
tasp.rar
55252.rar
统一加个_P的后缀改成
001_P.rar
abc103_P.rar
somebod_P.rar
tasp_P.rar
55252_P.rar
作者: xp3000 时间: 2018-10-5 21:36
回复 10# ctgwglzc
这个论坛很容易就搜索到- @echo off
-
- echo 请输入类型并回车:
- set /p file=
-
- for /f "delims=" %%i in ('dir /b *.%file%') do (
- ren "%%i" "%%~ni_P%%~xi"
- )
复制代码
看看_P在哪就知道怎么回事了,然后可以试着删除中间两行和在*.后面修改你需要的类型
作者: tigerpower 时间: 2018-10-5 22:42
本帖最后由 tigerpower 于 2018-10-5 22:44 编辑
- ren ????????.???.SOR ????????.??? && ren ????????.??? ????????.???.SOR
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |