批处理 复制文件并加上日期

批处理 复制文件并加上日期,第1张

写一个 WinRar 自动执行的脚本,另存为批处理文件

最简单的以日期作为压缩文件名的脚本如下:

echo off

echo 备份中...

e:\"Program Files"WinRARWinRAR.exe a -r -y -ibck -m0 e:\back\%date:~0,4%%date:~5,2%%date:~8,2%Back.rar E:\forback\*.*

说明:

a,将对的目录换成相应的目录,三个目录分别是:

压缩软厅岩明件(winrar.exe)安装路径

压缩后的文件存放路径

需要压缩的文件夹的路径

b,本处压缩参数意义:

(a)压缩时添加到压缩文件中

(-r)连同子目录一起压缩

(-y)若有d出框一律选是

(-ibck)后台执行

(-m0)以仅存储的方式即最高速度扮告进行

c,以上代码中产生的压缩文件名:(如今天)e:\back\20110807Back.rar

关于多目录备份,这个就简单了,可以先用Xcopy命令将你要备份的文件拷贝的一个文件夹中。然后最后用del命令将枣蚂拷贝文件的那个零时目录的文件全部删掉,如果不删的话,第二天备份时,会把第一天的也一起压缩,如此循环,备份文件越来越大。

建议你不要 把脚本放到开始-启动里面,这样一开机就运行会拖慢电脑速度。利用计划任务,指定一个合适的时间来进行会比较好。

RAR 命令行语法

~~~~~~~~~~~~~~

语法

RAR.exe <命令> [ -<开关>] <压缩文件> [ <@列表文件...>]

[ <文件...>] [ <解压李举路径\>]

常用命令

a 添加文件到压缩文件中。

例子:

1) 从当前目录添加所有的 *.hlp 文件到 help.rar 压缩文件:

rar a help *.hlp

2) 如果目录包含文件掩码或以反斜线结尾,将会应用普通的规则,你需要指定 -r 开关来处理它的子目录。

下列命令会把 Bitmaps 目录中除了子目录外的所有文件添加,因为未

指定开关 -r:

rar a Pictures.rar Bitmaps\*

d 从压缩文件中删除文件。请注意,如果这个命令导致压缩文件中所有文件

全部删除,这个空的压缩文件将被删除。

e 解压文件到当前目录。

f 更新压缩文件中的文件。 更新打包到压缩文件后被改变的文件。这个命令不

向压缩文件中添加新文件。

u 更新压缩文件中的文件。添加不在压缩文件中的文件和更新打包后改变了的

文件。

m[f]移动到压缩文件中[只用于文件]。移动文件和目录会使压缩 *** 作完成后它

们被删除。如果使用变量'f'和/或哪乎碧应用开关'-ed',则不删除目录。

v[t,b] 详细列出压缩文件内容[技术信息]。文件列出所使用的格式:绝对路径名,文

件注释,原始和压缩后的大小,压缩率,最近更新日期和时间,属性,CRC,

压缩方式和解压所需的最小RAR版本。当使用't'变量时可选技术信息(主 *** 作

系统,固实标志和老的文件版本标记)显示。变量 'b' 强制 RAR 只输出单纯

的文件名,而没有其他任何的附加信息。

列出所有压缩卷的内容,使用星号('*')代替压缩文件扩展名或使用'-v'

开关。

例子:

1) 列出 system.rar 压缩文件的内容 (技术信息)并使用重定向符输出

到文件 techlist.lst 中

rar vt system >techlist.lst

2) 列出 tutorial.rar 压缩文件的内容 (单纯文件名模式)

rar vb tutorial

x 带绝对路径解压

例子:

rar x test.rar testDir\

注意,目录名后面要跟\符号,如果没有testDir这个文件夹,会先自动创建。

如果文件已存在,若要解压后覆盖文件,则使用-o+开关,或者用-y开关。若不覆顷睁盖则用-o-开关。

常用开关

-ag[格式]

使用当前的日期和时间生成压缩文件名。

当创建压缩文件时附加当前日期字符串到压缩文件名上。用于每日备份。

附加的字符串格式有几种可选的格式参数定义或使用"YYYYMMDDHHMMSS"。

字符串的格式可以包含下列字符:

Y - 年

M - 月

MMM - 使用文本字符串作为月名(Jan,Feb,等.)

W - 年的第几周 (每星期从星期一开始)

A - 星期几 (星期一 -1,星期日 - 7)

D - 月的第几天

E - 年的第几天

H - 小时

M - 分 (如果在小时后,被作为分钟对待)

S - 秒

N - 压缩文件数。RAR 搜索要生成的名字的文件是否存在,如果发现

它已经存在,将递增一个压缩文件数字,直到生成一个唯一的名字。

'N' 格式化字符在创建卷时不被支持。

上面列出的每个字符串仅表示添加到压缩文件名中的一个字符。例如,

使用 WW 表示 2 数字的星期或 YYYY 定义 4 数字的年。

如果在格式化字符串的第一个字符是'+',日期字符串和基本压缩文件名

位置交换,所以日期将在压缩文件名之前。

格式化字符串可以包含在 '{' 和 '}' 包含的可选字符。此文本插入到压

缩文件名中。

所有其它字符被不变地添加到文件名上。

如果你需要更新已经存在的压缩文件,小心使用 -ag 开关。依赖于以前

使用的 -ag 传送的格式化字符串和时间,生成的和现有的压缩文件名可

能不匹配。在这种情况下 RAR 会创建一个新的压缩文件,而不是更新现

有文件。

例子:

1) 使用默认 YYYYMMDDHHMMSS 格式

rar a -ag backup

2) 使用 DD-MMM-YY 格式

rar a -agDD-MMM-YY backup

3) 使用 YYYYMMDDHHMM 格式,替换'backup'之前的日期

rar a -ag+YYYYMMDDHHMM backup

4) 使用 YYYY-WW-A 格式,包含区段描述

rar a -agYYYY{year}-WW{week}-A{wday} backup

5) 使用 YYYYMMDD 和压缩文件数。它允许你在同一天使用 -agyymmdd-nn

数次,每一个新的压缩文件名都将包含一个新的递增数字。

rar a -agYYYYMMDD-NN backup

注意:以上命令会生成文件名为backup{日期字符串}.rar的压缩包,backup也可以是别的自定义名字。

若想文件名中只保留日期,只需不写backup只写.rar即可:rar.exe a –agYYYY-MM-dd .rar

-ed 不添加空目录

这个开关指出空目录不被存储到被创建的压缩文件中。当解压这样一个压

缩文件时, RAR 会基于他们内部的文件路径创建非空的目录。关于空目录

的信息丢失。非空目录除了名字外(访问权限, 流, 等。)其他所有属性全

部丢失, 所以只有在你不需要保留这样的信息时使用此开关。

如果 -ed 和 'm' 命令或 -df 开关一起被使用,RAR 将不能移除空的目录。

-hp[p] 加密文件数据和头。

这个开关和 -p[p] 类似,但是开关 -p 只加密文件数据,而使文件名等

其它信息可见。这个开关加密所有包括文件数据、文件名、大小、属性、

注释和其它块等所有可感知压缩文件区域,所以它提供了更高的安全等

级。在压缩文件中使用-hp 加密,没有密码甚至不可能查看文件列表。

例子:

rar a -hpfGzq5yKw secret report.txt

将添加文件 report.txt 到加密的压缩文件secret.rar中,使用密码

'fGzq5yKw'

-m<n> 设置压缩模式:

-m0 存储 添加到压缩文件时不压缩文件。

-m1 最快 使用最快方式(低压缩)

-m2 较快 使用快速压缩方式

-m3 标准 使用标准(默认)压缩方式

-m4 较好 使用较好压缩方式(较好压缩,但是慢)

-m5 最好 使用最大压缩方式(最好的压缩,但是最慢)

如果没有指定这个开关,RAR使用-m3方式(标准压缩)。

默认情况下,RAR 在 -m1 和 -m2 模式中只使用常规压缩算法,高级算法

像声音和真彩处理只有在 -m3..-m5 模式下才启用,提升的文本压缩只有

在 -m4..-m5 中才被激活。默认值可以使用 -mc 开关替代。

-ms[列表]

指定存储文件类型。

指定不压缩而直接存贮的文件类型。这个开关被用来存储已经压缩的文件,

这将帮助增加压缩速度,而不会显著的减小压缩率。

可选参数 <列表>参数定义使用分号隔开的文件扩展名列表。例如,

-msrarzipjpg 将强制RAR不压缩直接存储所有的RAR和ZIP压缩文件和

JPG 图像。它也允许在列表中指定通配符文件掩码,所以 -ms*.rar

*.zip*.jpg 也可以工作。

如果 <列表>没有被指定,-ms 开关将使用默认的包含下列文件类型的扩

展设置:

7z, ace, arj, bz2, cab, gz, jpeg, jpg, lha, lzh, mp3,

rar, taz, tgz, z, zip

-mt<线程>

设置线程数。仅可用于 Window 版本。

<线程>参数可以是从 0 到 16 的值。它定义对于压缩算法活动线程的

推荐数。如果它大于 0,RAR 会使用多线程版本的压缩算法,在多处理

器系统上提供更高的速度。真实的活动线程数可能和指定的不同。

如果 <线程>是 0,RAR 会使用单线程压缩算法。

改变 <线程>参数轻微影响压缩率,所以如果所有其它压缩参数相等而

使用不同的 -mt 开关创建的压缩文件不会解压得一样连贯。

如果没有指定 -mt 开关,RAR 会尝试检测可用的处理器的数量并自动

选择优化的线程数。

-or 如果相同名字的文件已经存在则自动重命名解压的文件。重命名文件将得

到象 'filename(N).txt' 的名字,'filename.txt' 的位置是原始的文件

名,如果文件存在 'N' 是从 1 增加数字。

-o[+|-] 设置覆盖模式。可以在解压或更新文件时使用。下列模式可用:

-o 覆盖前询问

(默认用于解压文件)

-o+ 覆盖所有

(默认用于更新的压缩文件)

-o- 跳过已存在的文件。

-o+ 覆盖已存在的文件。

-o- 不覆盖已存在的文件。

-p[p] 压缩时,使用字符串<p>作为密码加密文件。密码大小写敏感。如果你在

命令行忽略密码,你会看到一个输入密码的提示。

例子:

rar a -pmyhoney secret1 *.txt

添加 *.txt文件并用密码"myhoney"加密.

-r 包含子文件夹,可以使用命令:

a,u,f,m,x,e,t,p,v,l,c,cf 和 s.

当使用命令 'a','u','f','m' 将处理在所有子目录中以及当前工作目

录的中的文件。

当使用命令 x,e,t,p,v,l,c,cf 或 s 将处理在子目录以及当前工

作目录中所有压缩文件。

-r- 禁用递归。

在某些情况下,即使没有指定 -r 开关 RAR 也会自动启用递归。开关 -r-

禁止它。

压缩时如果你指定了目录名,目录名不包含通配符,即使 -r 开关没有指定,

默认 RAR 添加目录的内容。如果磁盘根目录没有把通配符作为文件掩码指定,

RAR 也会自动启用递归。开关 -r- 禁用此行为。

例子:

rar a -r- arc dirname

命令仅会添加空目录 'dirname' 目录并忽略它的内容。下列命令:

rar a -r- arc c:\

会仅压缩 c: 根目录的内容并不会包含子目录。

-ta<日期>

只处理指定日期之后修改的文件。

日期字符串的格式是 YYYYMMDDHHMMSS。它允许在日期字符串中插入'-'

或 ':'的分隔符,并忽略后部区域。例如,下列开关是正确的:

-ta2001-11-20在内部它被转换成 -ta20011120000000 并作为"从2001

年11月20日0时0分0秒后修改的区域"对待。

-tb<日期>

只处理指定日期之前修改的文件。开关的格式和 -ta<日期>相同。

-tn<时间>

处理指定时间以后的新文件。时间字符串格式时:

[<ndays>d][<nhours>h][<nminutes>m][<nseconds>s]

例如,使用开关 -tn15d 来处理更新了15天的文件,-tn2h30m 来处理更

新了2小时30分的文件。

-to<时间>

处理指定时间以前的旧文件。开关的格式和 -tn<时间>相同。

-x<f> 排除指定的文件 <f>,通配符可以用在名称和文件掩码的文件部分。你

可以数次指定开关'-x'。

如果掩码包含通配符,它应用到当前目录和它的子目录。没有通配符它不

递归,所以如果你要在所有文件夹中排除某些“文件名”,你需要指定两

个掩码:用于当前目录的“文件名”和用于子目录的“*\filename”。如果

你知道一个文件的确切路径,你可以是使用“路径\文件名”语法来仅排除

“文件名”的此副本。如果你在解压一个压缩文件时使用 -x路径\文件名

语法,“路径”必须是一个压缩文件内的路径,而不是在解压后的磁盘上

的文件路径。

例子:

1) rar a -r -x*.bak -x*.rar rawfiles

*.bak 和 *.rar 不会添加到 rawfiles 中

2) rar a -r -x*\temp -x*\temp\* savec c:\*

压缩 C: 上除了 Temp 文件夹中的临时目录和文件外的所有文件

3) rar x -x*.txt docs

从 docs.rar 解压除了 *.txt 外的所有文件

-y 对于所有询问全部回答是。

-? 显示命令和开关的帮助。和没有参数或输入非法命令行选项时相同。

-- 停止开关扫描

这个开关告诉 RAR 命令行中没有更多的开关了。如果压缩文件或文件名

以 - 符号开头,可以使用它。没有'--'开关,这样的名字将被作为开关

对待。

返回值

~~~~~~

RAR 成功 *** 作后返回 0 。非 0 返回码意味着 *** 作由于某种错误被取消:

255 用户中断 用户中断 *** 作

9 创建错误 创建文件错误

8 内存错误 没有足够的内存进行 *** 作

7 用户错误 命令行选项错误

6 打开错误 打开文件错误

5 写错误 写入磁盘错误

4 被锁定压缩文件 试图修改先前使用 'k' 命令锁定的压缩文件

3 CRC 错误 解压缩时发生一个 CRC 错误

2 致命错误 发生一个致命错误

1 警告 没有发生致命错误

0 成功 *** 作成功

参考:

http://jingyan.baidu.com/article/a948d651b954a90a2dcd2e30.html

 压缩参数

用法:     rar <命令>-<开关 1>-<开关 N><压缩文件><文件...>

<@列表文件...><解压路径\>

<注释>

a             添加文件到压缩文件

c             添加压缩文件注释

cf            添加文件注释

ch            更改压缩文件参数

cw            写入压缩文件注释到文件

d             删除压缩文件中的文件

e             解压压缩文件到当前目录

f             刷新压缩文件中的文件

i[参数]=<串>在压缩文件中查找字符串

k             锁定压缩文件

l[t,b]        列出压缩文件[技术信息,简洁]

m[f]          移动到压缩文件[仅对文件]

p             打印文件到标准输出设备

r             修复压缩文件

rc            重建丢失的卷

rn            重命名压缩文件

rr[N]         添加数据恢复记录

rv[N]         创建恢复卷

s[名字|-]     转换压缩文件为自解压格式或反之

t             测试压缩文件

u             更新压缩文件中的文件

v[t,b]        详细列出压缩文件[技术信息,简洁]

x             用绝对路径解压文件

<开关>

-             停止扫描

ac            压缩或解压后清除存档属性

ad            添加压缩文件名到目标路径

ag[格式]      使用当前日期生成压缩文件名

ao            添加具有存档属性的文件

ap<路径>      添加路径到压缩文件中

as            同步压缩文件内容

av            添加用户身份校验 (仅注册版)

av-           禁用用户身份校验

c-            禁用注释显示

cfg-          禁用读取配置

cl            名称转换为小写

cu            名称转换为大写

df            压缩后删除文件

dh            打开共享文件

ds            对固实压缩文件禁用名称排序

e[+]<属性>    设置文件排除和包括属性

ed            不添加空目录

en            不添加"压缩文件结束"标志

ep            从名称中排除路径

ep1           从名称中排除基本目录

ep2           展开为完整路径

ep3           扩展路径为包含盘符的完全路径

f             刷新文件

hp[密码]      同时加密文件数据和文件头

id[c,d,p,q]   禁用信息显示

ieml[地址]    邮寄压缩文件

ierr          发御祥送所有消息到标准错误设备

ilog[名称]    把错误写到日志文件 (仅注册版)

inul          禁用所有消息

ioff          完成一个 *** 作后关闭 PC 电源

isnd          启用声音

k             锁定压缩文件

kb            保留损坏的已解压文件

m<0..5>带拆誉       设置压缩级别(0-存储...3-默认...5-最大)

mc<参数>      设置高级压缩参数

md<大小>      以KB为单位的字典大小(64,128,256,512,1024,2048,4096 or A-G)

ms[extext]   指定存储的文件类型

mt<线程>      设置线程数

n<文件>       仅包括指定文件

n@            从标准输入设备读取要包括的文件名称

n@<列表>      在指定列表文件包括文件

o+            覆盖已存在文件

o-            不覆盖已存在文件

oc            设置 NTFS 压缩属性

or            自动重命名文件

os            保存 NTFS 流

ow            保存或恢复文件所有权和组

[密码]        设置密码

p-            不询问密码

r             包含子目录

r0            仅包含通配符名称的子目录

ri

[:]   设置优先级 (0-默认,1-最小蠢段..15-最大) 和休眠时间(毫秒)

rr[N]         添加数据恢复记录

rv[N]         创建恢复卷

s[,v[-],e] 创建固实压缩文件

s-            禁用固实压缩文件

sc[obj] 指定字符集

sfx[名称]     创建自解压文件

si[名称]      从标准输入设备读取数据

sl<大小>      处理小于指定大小的文件

sm<大小>      处理大于指定大小的文件

t             压缩后测试文件

ta<日期>      添加日期 <日期>后修改的文件,日期格式 YYYYMMDDHHMMSS

tb<日期>      添加日期 <日期>前修改的文件,日期格式 YYYYMMDDHHMMSS

tk            保留原始压缩文件时间

tl            设置压缩文件时间为最新时间

tn<时间>      添加 <时间>以后的文件

to<时间>      添加 <时间>以前的文件

ts[N] 保存或恢复文件时间(修改,创建,访问)

u             更新文件

v             自动检测创建卷的大小或者列出所有的卷

v<大小>[k,b] 创建卷大小=<大小>*1000 [*1024, *1]

vd            创建卷前清除磁盘内容

ver[n]        文件版本控制

vn            使用旧样式卷命名方案

vp            每卷之前暂停

w<路径>       指定工作目录

x<文件>       排除指定的文件

x@            从标准输入设备读取要排除的文件名

x@<列表>      排除指定列表文件中的文件

y             假设对全部询问都回答是

z[文件]       从文件读取压缩文件注释

举个例子:    建立一个批处理BackFav.bat(名字可以随便起)文件内容:

REM 这个批处理文件是用来自动备份我的收藏夹

REM WinRAR <命令>-<开关1>-<开关N><压缩文件><文件><@列表文件><解压路径\>

"D:\Program Files\WinRAR\WinRAR.exe" a -as -r -sfx -zsfxpara.txt -EP1 "d:\my documents\Favorites.exe" "%USERPROFILE%\Favorites"

===================================================

参数说明:

a:                   添加指定的文件(源目录,这里是"%USERPROFILE%\Favorites")和文件夹到压缩文件(目标文件,这里是"d:\my documents\Favorites.exe")中。

-as:                这是一个开关,指添加方式是“同步压缩文件内容”

-r:                  表示“包含子文件夹”

-sfx:               表示建立的是一个自解压文件

-zsfxpara.txt: 从文件sfxpara.txt读取压缩文件注释,这注释有什么用后面解释

-ep1:             表示不把路径%USERPROFILE%保存在压缩文件中

2. 注释文件的作用

建立压缩文件的时候不光要考虑压缩那些文件,还要考虑怎么解压缩。通过注释文件可以向压缩包传递许多有用的信息。

sfxpara.txt内容:

PATH=%USERPROFILE%\

Silent=1

例:

"C:\Program Files\WinRAR\Rar.exe" a "g:\aa.rar" "f:\11.txt"     压缩"f:\11.txt"到G盘,命名为“aa”

"C:\Program Files\WinRAR\Rar.exe" d "g:\aa.rar" "22.bat"        删除压缩包"g:\aa.rar"中的"22.bat" 文件

"C:\Program Files\WinRAR\Rar.exe" d "g:\aa.rar" "ABC"           删除压缩包"g:\aa.rar"中的"ABC" 文件夹


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11980615.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存