中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-06-25 09:06
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 删除文件名中指定的字符的批处理怎么做? 查看 1,395 回复 4
楼 主 删除文件名中指定的字符的批处理怎么做? 发表于 2010-11-29 22:11 ·  中国 河南 郑州 联通
新手上路
积分 3
发帖 3
注册 2010-11-28 23:38
15年会员
UID 178465
性别 男
状态 离线
文件名是以下样子:
"图形1.ps (C)_001_Cyan.TIF",想改成"图形1.ps_001_Cyan.TIF"
"图形1.ps (M)_001_Magenta.TIF"想改成"图形1.ps_001_Magenta.TIF"
"图形1.ps (Y)_001_Yellow.TIF"想改成"图形1.ps_001_Yellow.TIF"
"图形1.ps (K)_001_Black.TIF"想改成"图形1.ps_001_Black.TIF"

就是把文件名中的" (C)"," (M)"," (Y)"," (K)"删掉,共有四种,注意()前有一空格,这个批处理应该怎么写呢,老大们帮帮我!
2 发表于 2010-11-29 23:59 ·  中国 吉林 延边朝鲜族自治州 电信
银牌会员
★★★
正在学习中的菜鸟...
积分 1,039
发帖 897
注册 2009-03-01 15:34
17年会员
UID 140302
性别 男
来自 在地狱中仰望天堂
状态 离线
当前目录中:
@echo off&setlocal enabledelayedexpansion
for %%a in (*.TIF) do (
set a=%%a
for %%b in (C M Y K) do set "a=!a: (%%b)=!"
ren "%%a" "!a!"
)


[ Last edited by Hanyeguxing on 2010-11-30 at 01:32 ]
3 发表于 2010-11-30 01:12 ·  中国 河南 郑州 联通
新手上路
积分 3
发帖 3
注册 2010-11-28 23:38
15年会员
UID 178465
性别 男
状态 离线
为什么运行后文件名改为!a!
4 发表于 2010-11-30 01:32 ·  中国 吉林 延边朝鲜族自治州 延吉市 电信
银牌会员
★★★
正在学习中的菜鸟...
积分 1,039
发帖 897
注册 2009-03-01 15:34
17年会员
UID 140302
性别 男
来自 在地狱中仰望天堂
状态 离线
少打了setlocal enabledelayedexpansion
5 发表于 2010-11-30 21:59 ·  中国 河南 郑州 联通
新手上路
积分 3
发帖 3
注册 2010-11-28 23:38
15年会员
UID 178465
性别 男
状态 离线
Originally posted by Hanyeguxing at 2010-11-30 01:32:
少打了setlocal enabledelayedexpansion

非常感谢!对DOS命令不熟,昨天试了一晚上也没搞定,
论坛跳转: