winrar 的命令行格式在 windows2003 下的应用-压缩日志 - 刘辉的博客

来源:百度文库 编辑:神马文学网 时间:2024/04/24 23:44:14
字体大小:小中大

关键字:windows2003 , winrar ,自动压缩,命令格式
描述:使用过awstats的用户应该有这样的体会,日志分析放在一个远程的服务器上,每天都要去web服务器上下载日志,用于分析统计,可是日志文件有的非常的的,直接下在很不方便,所以只有通过压缩日志取得更快的传输方式。
声明:本文是我经过好几天的研究实验后得出的经验,如果转载请注明出处:http://www.anywolfs.com/liuhui/blogedit.asp?id=84
--------------------------------------
100M的日志压缩完可能只有2M多,具体的比例我没有认真看过。
我这里把winrar装在了D:/program files/winrar下面,下面着段代码我放在了d:/autorar/的rar.bat文件里面,然后通过系统的任务计划去自动运行这个文件:
rar.bat文件的内容如下:
程序代码
cd
cd\
d:
cd program files/winrar
rar a D:\autoRar\rar\le.cn\ -m4 -ibck -ep -ilogD:\autoRar\err_log\rar.log -agYYMMDD -inul -tn8h30m -t E:\iis_logfiles\W3SVC1
cd
rar a D:\autoRar\rar\le.net\ -m4 -ibck -ep -ilogD:\autoRar\err_log\rar.log -agYYMMDD -inul -tn8h30m -t E:\iis_logfiles\W3SVC4725197
cd
rar a D:\autoRar\rar\hd\ -m4 -ibck -ep -ilogD:\autoRar\err_log\rar.log -agYYMMDD -inul -tn8h30m -t F:\iis_move\W3SVC489766979
我来解释下上面这段代码哈:
程序代码
cd
cd\
d:
cd program files/winrar
这些都是dos命令不用我来解释吧?当前目录切换成winrar的安装目录,这样我们就进入了rar的安装目录了
只有进入winrar的安装目录,下面的rar.exe可执行才能直接使用,否则需要带绝对路径:
程序代码
rar a D:\autoRar\rar\le.net\ -m4 -ibck -ep -ilogD:\autoRar\err_log\rar.log -agYYMMDD -inul -tn8h30m -t E:\iis_logfiles\W3SVC4725197
这段代码的意思呢,调用rar.exe可执行文件。
a 用于创建时使用,及创建一个rar文件。
D:\autoRar\rar\le.net\  这是我存放创建的新压缩文件包的路径,及rar会将文件压缩以后放在这个目录下面。
-m4:开关 -M  -  设置压缩方式,n有几种方式:
-m0    存储    添加文件到压缩文件但是不压缩
-m1    最快    最快速的方法 (最低的压缩比)
-m2    快速    快速压缩方法
-m3    标准    标准 (默认) 压缩方法
-m4    较好    较好的压缩方法 (较高的压缩比)
-m5    最优    最优的压缩方法 (最高压缩比但是速度也最慢)
-ibck:在后台运行 WinRAR
-ep:名称中排除路径,包含此开关时,文件在加入压缩文件时不会包含路径信息。因为这个对我没用,我就把路径去除了。
-ilog[文件名]:记录错误到文件中  -ilogD:\autoRar\err_log\rar.log意思就是把压缩过程中如果有产生错误,就防置在ilogD:\autoRar\err_log\下的rar.log文件中。
-AG[格式]: 以当前日期与时间生成压缩文件名。 -agYYMMDD 的意思就是以两位数字的年月日生成rar文件,比如今天生成的日志文件名称就是:061018.rar 。
-inul :禁用错误信息。这个我想很多人可能都不明白,意思就是如果rar出现错误,它就会弹出对话框向用户提示,同时任务也会暂停,直到用户确认以后任务才会继续或是被取消。如果使用上面的开关命令,就不会再有什么对话框,会将任务执行到完成为止,并把错误信息写在D:\autoRar\err_log\rar.log里面。
-tn[时间]: 处理比指定时间新的文件。 -tn8h30m 意思就是处理最近8个小时30分内生成的文件。这里要注意,在winrar软件的帮助文件里里面提示是这么说的:
-TO<时间>  -  处理比指定时间旧的文件
使用此开关时,只处理比指定时间还旧的那些文件,时间字符串的格式为:
[d][h][m][s]
例如,使用开关 -tn15d 可处理文件较旧于 15 天的,以及 -tn2h30m 则处理文件较
旧于 2 时 30 分的。
-TN<时间>  -  处理比指定时间新的文件
使用此开关时,只处理比指定时间还新的那些文件,时间字符串的格式为:
[d][h][m][s]
例如,使用开关 -tn15d 可处理最近 15 天的文件,以及 -tn2h30m 则处理最近 2 时 30 分的文件。
大家都注意到这里有问题吧,因为在举例中它两个都是使用-tn。而不是有一个是-to。所以我写的是-tn,且实现了我想要的目标。
-T  -  压缩后测试文件 。
E:\iis_logfiles\W3SVC4725197 :这里的意思就是日志所在的目录,iis自动生成的日志我指定在这个文件夹下。
上面这么做实现的目的是压缩昨天的日志文件成一个rar文件,不过我不知道上面这段命令中存在什么错误,在D:\autoRar\err_log\rar.log里面每天都会记录一条错误,意思是当天的日志无法压缩,因为它正在被使用。
也就是说我上面的命令实际上压缩了今天和昨天两天的日志,但是因为今天的压缩不了,我又跳过了错误,所以达到我的目的压缩了昨天的日志文件。
我的awstats不是适时统计的,只分析统计昨天的iis记录。
上面的命令我存在了web服务器上,之后我在awstats程序的服务器上通过wget下载到本地,再解压缩,然后再分析,上面有三行命令,是我在压缩三个站点的日志。
之后我通过windows2003系统自带的任务计划,自动在一定的时间内执行这个rar.bat文件。
以后我会写出怎么实现wget文件然后怎么实现解压缩文件,winrar的命令具体的还需要大家去查看winrar的帮助文件。
相关技术文档:
winrar 的命令行格式在 windows2003 下的应用:http://www.anywolfs.com/liuhui/article.asp?id=84
winrar 的命令行格式在 windows2003 下的应用 二 --解压日志
http://www.anywolfs.com/liuhui/article.asp?id=93
winrar 命令行简体中文说明
http://www.anywolfs.com/liuhui/article.asp?id=256
WGET 中文命令行使用说明参考:http://www.anywolfs.com/liuhui/article.asp?id=86
[本日志由 jothui 于 2008-08-29 10:30 AM 编辑]