楼 主
怎样用批处理的循环命令?
发表于 2004-06-06 00:00 · 中国 湖北 宜昌 联通
初级用户
★
积分 108 发帖 2 注册 2004-05-04 00:00 22年会员 UID 23745 性别 男
状态 离线
最近下载了一个命令行形式的图像格式转换工具,为了批量转换文件格式,我用for命令编写了如下的批处理文件:
for %%c in (*.jpg) do ImageConverter %%c.png
结果可以实现转换。问题是文件名全变成这种形式:***.JPG.PNG(字符全为大写)而我只想改变文件的后缀名,请问我应该怎样编写这个批处理文件?
多谢了。
第 2 楼
发表于 2004-06-07 00:00 · 中国 河北 石家庄 联通
铂金会员
★★★★
网络独行侠
积分 6,962 发帖 2,753 注册 2003-04-16 00:00 23年会员 UID 1565 性别 男 来自 河北保定
状态 离线
这跟你的转换工具有关系,你应该从转换工具的命令行入手解决这个问题。
偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“
这个帖子 ”和“
这个帖子 ”并努力遵守,如果可能,请告诉更多的人!
第 3 楼
用FOR实现批量转换
发表于 2004-06-08 00:00 · 中国 山西 运城 中移铁通
元老会员
★★★★
Batchinger
积分 4,432 发帖 1,512 注册 2002-10-18 00:00 23年会员 UID 19 性别 男
状态 离线
Re dos@fans:
你的命令行用法似乎有问题,类似于这类的软件一般需要两个参数,但是你只给ImageConverter提供了一个参数。是不是少些了一个%%C?类似于下面的语句:
for %%c in (*.jpg) do ImageConverter %%c %%c.png
如果是这样,问题就不难理解了。FOR解析*.jpg的参数时,缺省的将文件扩展名也赋予了%%C。如果你的系统是2k,XP,可以利用FOR的参数开关来仅仅解析文件的主文件名,具体参数请用FOR/?查询;如果你的系统是9x系列,可以在执行循环后,再执行以下两句代码恢复扩展名。
ren *.png *.
ren *.jpg *.png
※ Batchinger 致 Bat Fans:请访问
批处理编程的异类 ,欢迎交流与共享批处理编程心得!
第 4 楼
发表于 2004-06-11 00:00 · 中国 湖北 宜昌 联通
初级用户
★
积分 108 发帖 2 注册 2004-05-04 00:00 22年会员 UID 23745 性别 男
状态 离线
第 5 楼
发表于 2004-06-11 00:00 · 中国 广东 广州 天河区 电信
中级用户
★
积分 218 发帖 30 注册 2004-06-07 00:00 22年会员 UID 26187 性别 女
状态 离线
ren就是给文件改名吧,
ren 源文件名 目的文件名 就OK了.
日复一日 水滴石穿
今日菜鸟 明日人物
信不?????????
论坛跳转:
— 请选择 —
站务公告 & 版主讨论
意见反馈 & 网友交流
DOS学习入门 & 精彩文章 (教学室)
DOS疑难解答 & 问题讨论 (解答室)
DOS启动盘 & LOGO技术 (启动盘室)
DOS批处理 & 脚本技术(批处理室)
DOS媒体世界 & 网络技术 (多媒体室)
DOS汉化世界 & 中文系统 (中文化室)
DOS开发编程 & 发展交流 (开发室)
DOS软件下载 & 游戏分享 (下载室)
GRUB4DOS、SYSLINUX及其它启动管理软件讨论专区
其它操作系统综合讨论区
WinPE、PowerShell及其它命令行系统专区
贴图灌水、文学娱乐专区
网络日志(Blog)
论坛回收站
├ 链接失效,待修正