中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 批处理自动修改QQ传送文件的"重命名"扩展名?
作者:
标题: 批处理自动修改QQ传送文件的"重命名"扩展名? 上一主题 | 下一主题
semiuel
初级用户





积分 23
发帖 12
注册 2008-2-23
状态 离线
『楼 主』:  批处理自动修改QQ传送文件的"重命名"扩展名?

[求助]批处理如何自动修改QQ传送文件的".重命名"扩展名?

很多通过QQ传送过来的文件都会被QQ自动加上".重命名"的扩展名.
能不能写一个批处理,然后把这个批处理放到系统目录,在注册表里添加".重命名"这个扩展名的打开方式为这个批处理.
实现在"我的电脑"里双击以".重命名"结尾的文件就自动去掉这个扩展名.

比方在某个目录内有一个文件为"111.RAR.重命名",要求双击这个文件自动把文件名改为"111.RAR"

相信这个问题是每个使用QQ的人都碰到过的,请求大大们给出一个解决方法.

2010-1-8 10:46
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
abxialiang
新手上路





积分 11
发帖 11
注册 2009-12-29
状态 离线
『第 2 楼』:  

你的想法很好,我弄了一下,可以实现,批处理代码为

ren "%~1" "%~n1"

就是上面这一句,保存为 a.bat ,然后双击那个扩展名为 “重命名”的文件,选择打开程序,选择 a.bat ,而且选定 “始终用这种方式”。这样就可以用了,不行的话你再发贴,反正我在xp 下可以使用了

[ Last edited by abxialiang on 2010-1-8 at 15:32 ]

2010-1-8 15:30
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
semiuel
初级用户





积分 23
发帖 12
注册 2008-2-23
状态 离线
『第 3 楼』:  

确实可行,楼上能解释一下这两个变量的意思吗?

2010-1-8 15:53
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
clamber
初级用户





积分 46
发帖 39
注册 2008-11-2
状态 离线
『第 4 楼』:  

把下面这段代码保存为BAT文件,执行一次就OK了,以后直接双击".重命名"就会直接自动改名打开。
不好意思,之前忽略了一个问题,导致如果文件名带有空格就会失效,现改正过来了,如果之前用过这个批处理的,请删除C:\windows\opqqfl.cmd文件,再重新下载运行一次就好了。
@echo off
if not exist %windir%\opqqfl.cmd copy "%~0" %windir%\opqqfl.cmd
assoc .重命名>nul 2>nul||assoc .重命名=QQ接收文件&&ftype QQ接收文件=%windir%\opqqfl.cmd "%%1"
ren "%~nx1" "%~n1"&&start "" "%~n1%"
exit
[ Last edited by clamber on 2010-1-9 at 14:17 ]

   此帖被 +2 点积分    点击查看详情   
评分人:【 vsbat 分数: +1  时间:2010-1-8 18:05
评分人:【 tj051181 分数: +1  时间:2010-4-18 01:39


2010-1-8 17:25
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
vsbat
新手上路




积分 8
发帖 8
注册 2009-9-5
状态 离线
『第 5 楼』:  

LS
高手 绝对的!!

2010-1-8 18:05
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
dosxwj
新手上路





积分 1
发帖 1
注册 2009-12-18
状态 离线
『第 6 楼』:  



  Quote:
Originally posted by clamber at 2010-1-8 17:25:
把下面这段代码保存为BAT文件,执行一次就OK了,以后直接双击".重命名"就会直接自动改名打开。

[code]@echo off
if not exist %windir%\opqqfl.cmd copy  ...

高招,学习了

2010-1-9 09:47
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
semiuel
初级用户





积分 23
发帖 12
注册 2008-2-23
状态 离线
『第 7 楼』:  

白天的时候试了一下,非常好用.
但晚上回到家试了一下,发现当"路径+文件名"中带空格时会出错
"%~nx1" "%~n1"只会获取"路径+文件名"中第一个空格前的那部分字.

[ Last edited by semiuel on 2010-1-9 at 19:22 ]

2010-1-9 12:27
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
740011611
初级用户





积分 96
发帖 83
注册 2009-6-4
来自 信阳
状态 离线
『第 8 楼』:  

把文件保存在一个文件夹qq里,用@for /f %%i in ('dir /b') do ren "%%~nxi " "%%~ni.rar"  不知道行不?

2010-1-15 20:30
查看资料  发送邮件  发短消息 网志  OICQ (740011611)  编辑帖子  回复  引用回复
clamber
初级用户





积分 46
发帖 39
注册 2008-11-2
状态 离线
『第 9 楼』:  

已经改正了,掉写了一对引号,重新下载4楼的代码,删除文件%windir%\opqqfl.cmd,然后执行命令:assoc .重命名=
然后运行新下载的代码就行了,不好意思。

[ Last edited by clamber on 2010-1-15 at 22:10 ]

2010-1-15 22:08
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: