中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 文件的批量重命名问题(字符串截取)
作者:
标题: 文件的批量重命名问题(字符串截取) 上一主题 | 下一主题
nghr
初级用户





积分 88
发帖 34
注册 2007-10-20
状态 离线
『楼 主』:  文件的批量重命名问题(字符串截取)

rename.txt里的是一个文件列表,里面有如下文件名
X86-zh-cn-windows2000-kb927891-x86-chs_ee51f387b97f1e615a486f8c71ac1aed589c5e7f.exe
X86-zh-cn-windows2000-kb891861-v2-x86-chs_fe99e12ef1944cc43ad2891797ac9a7698e194d9.exe
X86-zh-cn-windows2000-kb839643-x86-chs_4543cae8403aead6b71a9e398821c4764199c307.exe
X86-zh-cn-mdac253-kb911562-x86-chs_5b6bfea659c7b9c19be9bfdfb303218dc703e1b3.exe
zh-cn-msxml4-kb936181-chs_3b9739675d59fc0e27d219e7fde62b021968f868.exe
zh-cn-msxml6-kb933579-chs-amd64_9761fbe99f2fefef52d6d5a7e6e312bd8bb8780b.exe
zh-cn-msxml6-kb933579-chs-x86_380e3e565b622835162f2df7602d55c4b2caca66.exe
zh-cn-msxml6-kb933579-chs-ia64_b484853cca8ef782b8d907f14c370db62ebcbb09.exe
X86-zh-cn-windows2000-kb842526-x86-chs_1815a9f34267fa4bc9b646ec2e968d34d8f12e0d.exe
X86-zh-cn-windows2000-kb917736-x86-chs_09116082358f9b1bcc348eb3dc1ae62cab53811e.exe
X86-zh-cn-windows2000-kb921503-x86-chs_f973317106612b2765d11fd4c103e016ae871844.exe
X86-zh-cn-windows2000-kb923810-x86-chs_66e3e84d7082a92b6eb0a39c70151927d25e04e9.exe
X86-zh-cn-windows2000-kb925902-x86-chs_adc2d196d53897feea4303912001f2eeffa857ac.exe
X86-zh-cn-windows2000-kb926122-x86-chs_799d93fda7c12a18af41ab6d6b42fbbcd88838d3.exe
X86-zh-cn-windows2000-kb931784-x86-chs_09ccb10762b63dbb952c21a54eb6bfe96cccdb60.exe
X86-zh-cn-windows2000-kb932168-x86-chs_03fbbde2131237d377ec5c558914412d59de6352.exe
X86-zh-cn-windows2000-kb933729-x86-chs_1dcca5a1325c40bff57e4bad702f490c2620e85d.exe
X86-zh-cn-windows2000-kb935839-x86-chs_9f73a690741eafcd094b26e16f6e446d6535f1fb.exe
X86-zh-cn-windows2000-kb936021-x86-chs_8ed8af210f7265d7644f1677a3ab1d6ced74b7ff.exe
X86-zh-cn-windows2000-kb938827-x86-chs_5a103b1e9444b0b3ee307279f8a0deebfa1560be.exe
X86-zh-cn-windows2000-kb938829-x86-chs_9894ed93be3204109ff74aac9e0c8e8afd96a2dc.exe
X86-zh-cn-stepbystepinteractivetraining-kb923723-x86-chs_18bd07ef29adf6e2d4198890782498ea5339bb5d.exe
X86-zh-cn-windowsmedia6-kb925398-v2-x86-chs_003a779ff2e5d8968ccd00df1dfe5f1332597c9e.exe
X86-zh-cn-windowsmedia7-kb936782-x86-chs_89558ff3e11f488951bd38621637c05fbe562433.exe

现在想给这些文件重命令一下,举例
X86-zh-cn-windows2000-kb927891-x86-chs_ee51f387b97f1e615a486f8c71ac1aed589c5e7f.exe >>windows2000-kb927891-x86-chs.exe
zh-cn-msxml6-kb933579-chs-x86_380e3e565b622835162f2df7602d55c4b2caca66.exe >>msxml6-kb933579-chs-x86.exe

简单来说就是去提文件名前的X86-zh-cn-,去掉文件后的类似_89558ff3e11f488951bd38621637c05fbe562433的乱字符,本人水平有限,请那位高人帮帮忙

2007-11-9 12:35
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
abcd
银牌会员





积分 1436
发帖 739
注册 2007-10-11
状态 离线
『第 2 楼』:  


@echo off
for /f "delims=" %%i in (readme.txt) do (
   set str=%%i
   setlocal enabledelayedexpansion
   if /i "!str:~0,2!"=="X8" (echo !str:~10,-45!) else (echo !str:~6,-45!)
   endlocal
)
pause
改名,自己写吧

2007-11-9 13:13
查看资料  发短消息 网志  OICQ (470237592)  编辑帖子  回复  引用回复
nghr
初级用户





积分 88
发帖 34
注册 2007-10-20
状态 离线
『第 3 楼』:  

多谢指点

2007-11-9 15:56
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: