![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-12 02:25 |
共 47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 关于用批处理来关联Winrar并解压 |
| 可打印版本 2,646 / 22 |
| 第1楼 lisyofun | 发表于 2009-03-04 17:53 |
| 初级用户 发帖 61 积分 87 | |
|
关于用批处理来关联Winrar并解压 请看如下:
这里guanlian.bat里的内容: @echo off assoc.rar=rarfile ftype rarfile="%programfiles%\winrar\jieyarar.bat" "%1" "%*" assoc.zip=zipfile ftype zipfile="%programfiles%\winrar\jieyazip.bat" "%1" "%*" @echo off title 正在解压.... echo 正在解压,如果文件较大,可能需要一点时间. "%programfiles%\winrar\rar" x -y "*.rar" E:\临时下载存档区 >nul 2>nul exit 这是 jieyarar.bat 里的内容 @echo off title 正在解压.... echo 正在解压,如果文件较大,可能需要一点时间. "%programfiles%\winrar\rar" x -y "*.rar" E:\临时下载存档区 >nul 2>nul exit 这是jieyazip.bat里的内容 @echo off title 正在解压.... echo 正在解压,如果文件较大,可能需要一点时间. "%programfiles%\winrar\winrar" x -y "*.zip" E:\临时下载存档区 >nul 2>nul exit 我本来只想解压用户点击的那个文件的,但不知道怎么才能获取那个变量,试过%0和%1 都不行,所以只能用*.zip和*.rar替代. 现在的问题是每解压一个文件,它都会解压当前目录下所有的rar或zip文件. 请问怎么才能只解压当前点击的文件呢. |
|
| 第2楼 lisyofun | 发表于 2009-03-05 18:38 |
| 初级用户 发帖 61 积分 87 | |
|
如果有什么软件或外部程序能让压缩文件解压到指定的目录也行.
|
|
| 第3楼 yishanju | 发表于 2009-03-06 02:28 |
| 银牌会员 发帖 1,357 积分 1,488 | |
|
意思是所有压缩文件全部只能解压到一个目录里?
|
|
| 第4楼 yishanju | 发表于 2009-03-06 02:33 |
| 银牌会员 发帖 1,357 积分 1,488 | |
|
WINRAR --设置--压缩--默认解压路径
|
|
| 第5楼 lisyofun | 发表于 2009-03-06 09:21 |
| 初级用户 发帖 61 积分 87 | |
|
呵呵,我的意思是,一打开一个rar文件或zip文件,它就会自动解压到指定的目录,就和自解压文件一样.
|
|
| 第6楼 yishanju | 发表于 2009-03-06 19:31 |
| 银牌会员 发帖 1,357 积分 1,488 | |
|
-_-那就干脆做一个脚本自动把RAR.ZIP转成自解
|
|
| 第7楼 Hanyeguxing | 发表于 2009-03-06 23:34 |
| 银牌会员 发帖 897 积分 1,039 来自 在地狱中仰望天堂 | |
Originally posted by lisyofun at 2009-3-6 09:21: 以使用winrar.exe解压为例。 首先,假设我们要压缩并解压的文件是123.dat,期待他的解压路径为D:\hanye\guxing。首先,我们依次创建这些文件夹,然后把123.bat文件复制到该目录,将其压缩为123.rar。重点的是压缩的选项目:添加压缩时,“常规”下选择rar压缩格式,“文件”下选择“存储绝对路径”或“存储包括盘符的完全路径”。然后删除D:\hanye文件夹及其子文件夹和所有里面的文件。 在解压命令时,如下使用: winrar.exe x -y "123.rar" 这样运行后,该123.rar就会被强制解压到D:\hanye\guxing。解压时并创建这些目录。 顺便说一点废话,用上面的方法创建的压缩文件,在我们用winrar的GUI界面解压缩时,无论使用哪个,都会创建绝对路径的目录。例如,选择解压到当前文件夹,则会在当前文件夹内生成子目录D_\hanye\guxing 至于你在1楼中说的会解压所有文件,那是因为你使用了*.rar和*.zip。 [ Last edited by Hanyeguxing on 2009-3-7 at 00:02 ] |
|
| 第8楼 Hanyeguxing | 发表于 2009-03-06 23:44 |
| 银牌会员 发帖 897 积分 1,039 来自 在地狱中仰望天堂 | |
|
不好意思,没看明白你在1楼的意思,你是不是要使在自己的机器里,双击任意.rar 或.zip,会将其强制解压缩到某个指定的目录?
[ Last edited by Hanyeguxing on 2009-3-7 at 00:05 ] |
|
| 第9楼 lisyofun | 发表于 2009-03-07 12:38 |
| 初级用户 发帖 61 积分 87 | |
|
对,我的意思是只要客人一点击rar或zip文件,它就会自己解压到E:\临时下载存档区 这个固定的文件夹,因为文件都是客人自己下载的,所以总不能让客人自己做自解压文件吧,就比如说,客人刚刚下载了一个1.rar的文件,他一打开就会自动解压到E:\临时下载存档区这个文件夹里。我现在的问题是客人如果下了两个rar以上的压缩文件,一点击的话两个都会自动解压到E:\临时下载存档区,我想让它单独解压,就和自解压文件一样。
还有如果不用*.rar或*.zip的话,根本解压不了。 |
|
| 第10楼 xswdong | 发表于 2009-03-08 06:35 |
| 中级用户 发帖 129 积分 216 | |
|
有点强奸民意的意思,恐怕不妥。
|
|
| 第11楼 lisyofun | 发表于 2009-03-08 19:12 |
| 初级用户 发帖 61 积分 87 | |
|
晕,我们这是网吧,当然有自己的考虑啊,现在讨论的是如何实现这一功能.
我现在加了一句 del /f "*.zip" 和 del /f "*.rar" 每次解压后都会删除原文件,虽然不太完美,但也还行. |
|
| 第12楼 yishanju | 发表于 2009-03-11 16:28 |
| 银牌会员 发帖 1,357 积分 1,488 | |
|
rar命令本身就支持解压后删除源文件
|
|
| 第13楼 lisyofun | 发表于 2009-03-11 18:56 |
| 初级用户 发帖 61 积分 87 | |
|
不知道怎么样才能只解压用户点击的解压文件啊。
|
|
| 第14楼 yishanju | 发表于 2009-03-12 20:49 |
| 银牌会员 发帖 1,357 积分 1,488 | |
|
我有想法了
我懒得装虚拟机 你有没可以远程登陆的测试环境 |
|
| 第15楼 yishanju | 发表于 2009-03-12 21:57 |
| 银牌会员 发帖 1,357 积分 1,488 | |
|
在文件夹选项-文件类型-rar 点高级,改成 "C:\Program Files\WinRAR\unrar.exe" x -o+ -y "%1" E:\临时下载存档区\
|
|
| 1 2 下一页 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |