WinRAR在DOS下压缩/解压缩的使用方法

用实例来说明问题。

我的WinRAR路径:

C:/Program Files/WinRAR/WinRAR.exe

用法: rar <命令> -<开关 1> -<开关 N> <压缩文件> <文件...> <@列表文件...> <解压路径/> <命令>

[命令行参数查看 ]

操作步骤:

1.将C:/Program Files/WinRAR下的Rar.exe拷贝到%SystemRoot%/system32下,这样你就不必设置rar的环境变量,而能直接再cmd 命令提示符下使用rar命令 .

(关于环境变量: cmd 的命令不能用了怎么办 )

2.在C盘创建duxing.txt 文件和dodo 文件夹,用来做个试验.

3.运行中输入cmd打开命令提示符.

4.然后:

压缩文件:

C:/Documents and Settings/Administrator>cd/
C:/>rar a duxing.rar duxing.txt
RAR 3.62 版权 (C) 1993-2006 Alexander Roshal 3 十二月 2006
共享版本 输入 RAR -? 获得帮助
评估版本,请注册
正在创建 压缩文件 duxing.rar
正在添加 duxing.txt 完成
完成


压缩文件夹:

C:/>rar a dodo.rar dodo
RAR 3.62
版权 (C) 1993-2006 Alexander Roshal 3 十二月 2006
共享版本 输入 RAR -? 获得帮助
评估版本,请注册
正在创建 压缩文件 dodo.rar
正在添加 dodo 完成
完成

WinRAR如何批量压缩文件夹

1.拖放文件压缩之:
创建个bat,内容为:

rar a %1.rar %1

然后依次将要压缩的文件或文件夹拖放到该bat图标上,即可压缩了。

能省点儿事儿吧。

------Update--2008.11.18--笃行天下

Dos贴吧 里求教归来~~

 

@echo off
rem --设置指定路径为d:/test ,用户可自定义
set "pt=d:/test "

rem --获取指定路径下所有文件和文件夹的名称
for /f %%i in ('dir /b d:/test' ) do (

rem --这里做为显示的命令参数
rar a d:/test/ %%~ni.rar d:/test/ %%i
)
echo 完成!
ping -n 3 127.0.0.1>nul


对上面批处理的说明:

1. rem后跟的是注释;
2. set "pt=d:/test" 设置的是路径,test里每一个文件和文件夹都会被单独压缩成一个rar包;
3. for /f %%i in ('dir /s/b d:/test') 这句就是我在Dos贴吧所求得的,表示获得d:/test路径下的文件和文件夹名称作为下一步的参数
4. rar a d:/test/ %%~ni .rar %%i 中d:/test/ 设置的是压缩包存放路径%%~ni 表示压缩包的名称(不含原来文件的扩展名例如原来文件为duxing.txt压缩后为 duxing.rar,这种情况下需要注意,若同目录中有duxing.java,也会被添加到duxing.rar包中;若要包含原文件名,则将此部分改为%%i , 压缩后,名称为duxing.txt.rar)。
5. 最后一行的 ping -n 3 127.0.0.1>nul 是3秒后结束程序,关闭窗口
6. 小提示:创建的这个bat文件若放到压缩源的路径里,自身也会被压缩,所以留意一下,不需要时可以删除之.若bat文件放到要压缩源的路径之外,就不用考虑此问题.

7.一个不考虑环境变量的写法,即命令中显式指出rar.exe路径:
(我的RAR.exe所在路径: C:/Program Files/WinRAR/RAR.exe)
@echo off
rem --
设置指定路径为d:/test ,用户可自定义
set "pt=d:/test "

rem --
获取指定路径下所有文件和文件夹的名称
for /f %%i in ('dir /b d:/test' ) do (

rem --这里做为显示的命令参数
"C:/Program Files/WinRAR/rar.exe" a d:/test/ %%~ni.rar d:/test/ %%i
)
echo 完成!
ping -n 3 127.0.0.1>nul


8.缺陷 :仅能处理某一文件夹下的内容;所要压缩的对象名称中不能含有空格。

讲解了原理,您也能自行修改这段代码了,建议在正式使用前,请新建个文件夹,测试一下,考虑一下各种情况下会不会有意想不到的效果。

最后祝您运行成功,感谢Dos贴吧的那位不知名的恩师~~

rem --命令更新18:42 2008-11-25 支持文件和文件名称中含空格
rem --笃行天下 http://hi.baidu.com/duxing

@echo off
rem --设置指定路径为d:/test ,用户可自定义
set "pt=d:/test"

rem --获取指定路径下所有文件和文件夹的名称
for /f "tokens=*" %%i in ('dir /b %pt%') do (

rem --这里做为显示的命令参数
rar a "%pt%/%%i" "%pt%/%%i"
)
echo 完成!
pause

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

解压在文件的命令行也差不多操作,先把winrar安装目录下的unrar.exe拷贝到C:/windows/system32下

用法: unrar <命令> -<开关 1> -<开关 N> <压缩文件> <文件...>
<@列表文件...> <解压路径/>

<注释>
e 解压压缩文件到当前目录
l[t,b] 列出压缩文件[技术信息,简洁]
p 打印文件到标准输出设备
t 测试压缩文件
v[t,b] 详细列出压缩文件[技术信息,简洁]
x 用绝对路径解压文件

<开关>
- 停止扫描
ac 压缩或解压后清除存档属性
ad 添加压缩文件名到目标路径
ai 忽略文件属性
ap<路径> 添加路径到压缩文件中
av- 禁用用户身份校验
c- 禁用注释显示
cfg- 禁用读取配置
cl 名称转换为小写
cu 名称转换为大写
dh 打开共享文件
ep 从名称中排除路径
ep3 扩展路径为包含盘符的完全路径
f 刷新文件
id[c,d,p,q] 禁止信息显示
ierr 发送所有消息到标准错误设备
inul 禁用所有消息
ioff 完成一个操作后关闭 PC 电源
kb 保留损坏的已解压文件
n<文件> 仅包括指定文件
n@ 从标准输入设备读取要包括的文件名称
n@<列表> 在指定列表文件包括文件
o[+|-] 设置覆盖模式
oc 设置 NTFS 压缩属性
or 自动重命名文件
ow 保存或恢复文件所有权和组
[密码] 设置密码
p- 不询问密码
r 包含子目录
ri

[:<S>] 设置优先级 (0-默认,1-最小..15-最大) 和休眠时间(毫秒)
sl<大小> 处理小于指定大小的文件
sm<大小> 处理大于指定大小的文件
ta<日期> 添加日期 <日期> 后修改的文件,日期格式 YYYYMMDDHHMMSS
tb<日期> 添加日期 <日期> 前修改的文件,日期格式 YYYYMMDDHHMMSS
tn<时间> 添加 <时间> 以后的文件
to<时间> 添加 <时间> 以前的文件
ts<m,c,a>[N] 保存或恢复文件时间(修改,创建,访问)
u 更新文件
v 列出所有卷
ver[n] 文件版本控制
vp 每卷之前暂停
x<文件> 排除指定的文件
x@ 从标准输入设备读取要排除的文件名
x@<列表> 排除指定列表文件中的文件
y 假设对全部询问都回答是

举例说明:(将一个文件解压缩到当前目录下)d:/>unrar x 123.rar

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/295327.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

.NET6 新功能和新生态

微软中国MSDN 点击上方蓝字关注我们.NET 6正式推出已有一周多的时间&#xff0c;不少小伙伴已经安装好开始尝鲜了。围绕着.NET 6&#xff0c;开发者大佬们已经为大家讲解了不少新功能和新生态。但是&#xff01;我们这里还有更多你可能感兴趣的最新消息&#xff0c;今天就让我…

微软开源PDB

PDB或“程序数据库&#xff08;Program DataBase&#xff09;”是Windows生态系统的一个核心组件。不管你是使用C编写代码&#xff0c;还是使用.NET编写代码&#xff0c;如果没有PDB文件&#xff0c;即使是像单步执行代码这样的基本任务也是不可能的。然而&#xff0c;PDB格式在…

Android之调用js常见错误

/*** js接口*/final class JavaScriptInterface {JavaScriptInterface() {}/*** This is not called on the UI thread. Post a runnable to invoke* loadUrl on the UI thread.*/public void showCity() {mHandler.post(new Runnable() {public void run() {new MyApplication…

java 抽象类与接口区别是什么_JAVA中抽象类与接口的区别,分别在什么情况下使用它们...

在网上看到很多人问关于“抽象类与接口的区别”&#xff0c;因此本人想通过自己多年对JAVA开发的经验来总结一下抽象类与接口的区别以及分别在什么情况下使用它们。在Java语言中&#xff0c; abstract class 和interface 是支持抽象类定义的两种机制。正是由于这两种机制的存在…

公厕的门下面为什么都要空一截?难道是为了和别人分享我中午吃的两碗螺狮粉?

全世界只有3.14 % 的人关注了爆炸吧知识何人在此肆意飞翔昨天晚上的这个时候&#xff0c;超模君还在苦逼的加班。好不容易码完了最后一个字&#xff0c;想着先去厕所解决一下人生大事&#xff0c;再回来发布推文。随着一坨污秽倾泻而出&#xff0c;超模君再一次感受到无shi一身…

CentOS thrift python demo

编辑接口文件 hellowworld.thrift service HelloWorld {string ping(),string say(1:string msg) }编辑 server.py#!/usr/bin/env pythonimport socket import sys sys.path.append(./gen-py)from helloworld import HelloWorld from helloworld.ttypes import *from thrift.tr…

关于volatile(转)

关于volatile我们知道&#xff0c;在Java中设置变量值的操作&#xff0c;除了long和double类型的变量外都是原子操作&#xff0c;也就是说&#xff0c;对于变量值的简单读写操作没有必要进行同步。这在JVM 1.2之前&#xff0c;Java的内存模型实现总是从主存读取变量&#xff0c…

asp.net core自定义依赖注入容器,替换自带容器

依赖注入在asp.net core程序中,众所周知&#xff0c;依赖注入基本上贯穿了整个项目&#xff0c;以通用的结构来讲解&#xff0c;控制器层(Controller层)依赖业务层(Service层),业务层依赖于仓储层(Repository层),而其他层级中也或多或少的使用了依赖注入,在这里不过多的对于依赖…

学习socket nio 之 mina实例

1&#xff1a;mina之浅谈 mina是apache基于socket nio的一套框架&#xff0c;可以从apache官网下载jar包和源码。试用起来非常方便&#xff0c;也非常强大。如果对socket nio还不是很了解的话&#xff1a;请看一下这两篇文章 学习bytebuffer和socket nio实例 这里我简单的介绍一…

BZOJ3172 TJOI2013 单词

传送门 Description 某人读论文&#xff0c;一篇论文是由许多单词组成。但他发现一个单词会在论文中出现很多次&#xff0c;现在想知道每个单词分别在论文中出现多少次。 Input 第一个一个整数N,表示有多少个单词&#xff0c;接下来N行每行一个单词。每个单词由小写字母组成&am…

java aop execution_Spring AOP -- execution表达式

*&#xff1a;匹配任何数量字符&#xff1b;..&#xff1a;匹配任何数量字符的重复&#xff0c;如在类型模式中匹配任何数量子包&#xff1b;而在方法参数模式中匹配任何数量参数。&#xff1a;匹配指定类型的子类型&#xff1b;仅能作为后缀放在类型模式后边。234017_UIVQ_252…

理工男都能有多痴情?

1 简直一模一样&#xff01;▼2 你的担心太多余了些▼3 汤包怎么吃&#xff1f;英国人&#xff1a;挤掉汤汁再吃&#xff08;素材来源网络&#xff0c;侵删&#xff09;▼4 就还挺奇特的&#xff01;&#xff1f;&#xff08;素材来源网络&#xff0c;侵删&#xff09;▼5 …

Objective-C征途:Hello Objective-C

先来介绍一下历史背景&#xff0c;Cocoa和Objective-C是苹果公司Mac OS X操作系统的核心。虽然Mac OS X相对较新&#xff0c;但Objective-C和Cocoa的推出已有时日。早在20世纪80年代早期&#xff0c;Bard Cox就发明了Objective-C&#xff0c;意在将流行的&#xff0c;可移植的C…

QT6 C++ 开发指南

QT6 C 开发指南 1 认识QT1.1 QT的简介1.2 QT 的安装 2 GUI 程序设计基础2.1 GUI程序结构2.2可视化UI设计2.2.3 信号与槽函数2.2.4 信号与槽的使用 2.5 QT Creator 使用技巧 3 QT 框架功能概述 1 认识QT 1.1 QT的简介 省略 1.2 QT 的安装 省略 注&#xff1a;至于安装的开发…

基于事件驱动架构构建微服务第12部分:向Apache KAFKA生成事件

原文链接&#xff1a;https://logcorner.com/building-microservices-through-event-driven-architecture-part12-produce-events-to-apache-kafka/在本教程中&#xff0c;我将展示如何将事件发布到apache KAFKA。当客户端发生命令时&#xff0c;它将产生一个事件&#xff08;例…

Andriod之使用极光推送自定义消息打造个性的消息推送效果

没必要重复造轮子&#xff0c;吸收别人的精华&#xff0c;站在巨人的肩膀上&#xff0c;才能走得更远&#xff0c;如果技术不能带来利润&#xff0c;狗屁都不如&#xff0c;好了&#xff0c;介绍下极光推送吧&#xff0c;我们项目里面用的是个推&#xff0c;先把这个极光推送的…

php可选缓存APC

1、APC缓存简介 APC&#xff0c;全称是Alternative PHP Cache&#xff0c;官方翻译叫”可选PHP缓存”。它为我们提供了缓存和优化PHP的中间代码的框架。 APC的缓存分两部分:系统缓存和用户数据缓存。系统缓存 它是指APC把PHP文件源码的编译结果缓存起来&#xff0c;然后在每次调…

全球五大顶级域名一周统计:7月第三周新增超9万个

中国IDC评述网07月27日报道&#xff1a;据域名统计机构WebHosting.info公布的最新数据显示&#xff0c;截至2012年7月23日&#xff0c;全球五大顶级域 名&#xff08;.COM、.NET、.ORG、.INFO和BIZ&#xff09;总量达131,918,481个&#xff0c;环比上周新增90,138个&#xff0c…

java后台传一个对象到前台_前台判断对象中的一个布尔值_springMVC面试题

1&#xff1a;springMVC工作原理springMVC架构.png【用户发送请求到前端控制器dispatcherservlet&#xff0c;前端控制器接收到请求之后调用处理器映射器&#xff0c;根据请求url找到具体的处理器&#xff0c;生成处理器对象返回给前端控制器&#xff0c;前端控制器通过处理器适…

POJ 3267 The Cow Lexicon

题意&#xff1a;就是给出一个主串&#xff0c;和一本字典&#xff0c;问最少在主串删除多少字母&#xff0c;可以使其匹配到字典的单词序列。 PS:是匹配单词序列&#xff0c;而不是一个单词。 f[i]表示从message中第i个字符开始&#xff0c;到第L个字符&#xff08;结尾处&…