中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-12 23:24
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 批处理自动修改QQ传送文件的"重命名"扩展名? 查看 2,171 回复 8
楼 主 批处理自动修改QQ传送文件的"重命名"扩展名? 发表于 2010-01-08 10:46 ·  中国 浙江 宁波 电信
初级用户
积分 23
发帖 12
注册 2008-02-23 16:23
18年会员
UID 111270
性别 男
状态 离线
[求助]批处理如何自动修改QQ传送文件的".重命名"扩展名?

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

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

相信这个问题是每个使用QQ的人都碰到过的,请求大大们给出一个解决方法.
2 发表于 2010-01-08 15:30 ·  中国 湖南 株洲 电信
新手上路
积分 11
发帖 11
注册 2009-12-29 17:21
16年会员
UID 157557
性别 男
状态 离线
你的想法很好,我弄了一下,可以实现,批处理代码为

ren "%~1" "%~n1"

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

[ Last edited by abxialiang on 2010-1-8 at 15:32 ]
3 发表于 2010-01-08 15:53 ·  中国 浙江 宁波 电信
初级用户
积分 23
发帖 12
注册 2008-02-23 16:23
18年会员
UID 111270
性别 男
状态 离线
确实可行,楼上能解释一下这两个变量的意思吗?
4 发表于 2010-01-08 17:25 ·  中国 重庆 移动
初级用户
积分 46
发帖 39
注册 2008-11-02 22:24
17年会员
UID 129819
性别 男
状态 离线
把下面这段代码保存为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-01-08 18:05
tj051181 +1 2010-04-18 01:39
5 发表于 2010-01-08 18:05 ·  中国 上海 电信
新手上路
积分 8
发帖 8
注册 2009-09-05 10:59
16年会员
UID 151524
性别 男
状态 离线
LS
高手 绝对的!!
6 发表于 2010-01-09 09:47 ·  中国 广东 深圳 电信
新手上路
积分 1
发帖 1
注册 2009-12-18 16:58
16年会员
UID 156866
性别 男
状态 离线
Originally posted by clamber at 2010-1-8 17:25:
把下面这段代码保存为BAT文件,执行一次就OK了,以后直接双击".重命名"就会直接自动改名打开。

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



高招,学习了
7 发表于 2010-01-09 12:27 ·  中国 浙江 宁波 电信
初级用户
积分 23
发帖 12
注册 2008-02-23 16:23
18年会员
UID 111270
性别 男
状态 离线
白天的时候试了一下,非常好用.
但晚上回到家试了一下,发现当"路径+文件名"中带空格时会出错
"%~nx1" "%~n1"只会获取"路径+文件名"中第一个空格前的那部分字.

[ Last edited by semiuel on 2010-1-9 at 19:22 ]
8 发表于 2010-01-15 20:30 ·  中国 河南 新乡 联通
初级用户
★★
积分 96
发帖 83
注册 2009-06-04 00:54
17年会员
UID 146648
性别 男
来自 信阳
状态 离线
把文件保存在一个文件夹qq里,用@for /f %%i in ('dir /b') do ren "%%~nxi " "%%~ni.rar" 不知道行不?
9 发表于 2010-01-15 22:08 ·  中国 重庆 移动
初级用户
积分 46
发帖 39
注册 2008-11-02 22:24
17年会员
UID 129819
性别 男
状态 离线
已经改正了,掉写了一对引号,重新下载4楼的代码,删除文件%windir%\opqqfl.cmd,然后执行命令:assoc .重命名=
然后运行新下载的代码就行了,不好意思。

[ Last edited by clamber on 2010-1-15 at 22:10 ]
论坛跳转: