命令行Winrar和批处理脚本

我已经写了一个批处理脚本备份我的桌面上的一些东西,并通过networking转储到一个共享……唯一让我烦恼的是rar.exe的冗长,而它正在做压缩部分的工作。

任何人都知道是否可以调整rar.exe来显示一个状态栏的整个过程,至less抑制每个单独的文件被添加到档案的输出。

或者,如果其他任何命令行压缩工具的Windows(winzip / 7zip),人们都熟悉,我很乐意使用这些。 或者任何build议,使这批工作更强大一点。


@echo off echo "Beginning Compress Job" "C:\Program Files\WinRar\rar.exe" a -agyyyy-MM-dd -r "C:\Archives\" "C:\Work\Folder1\" "C:\Work\Folder2\" "C:\Work\Folder3\" echo "Files backed up to C:\Archives" NET USE U: > %TMP%\JunkerFile 2>&1 IF %ERRORLEVEL% == 0 GOTO Success echo "Drive Disconnected - Cannot Copy Backup To U:\" GOTO End :Success echo "Drive Connected" echo "Performing Backup" move C:\Archives\*.rar U:\Archives\ echo "Backup Complete" GOTO End :End pause 

如果你想压制输出,只需在命令行的末尾为rar.exe添加> null

我使用7-zip的命令行工具,我很高兴。 它只是一个exe文件。

http://dotnetperls.com/7-zip-examples

(首先,对于我那可怕的英语感到抱歉)

感谢这个非常有用的脚本!

关于这个消息,在3.42版本的winrar中有一个param call inul,可以用来closures所有的消息。 用你的例子

 "C:\Program Files\WinRar\rar.exe" a -agyyyy-MM-dd -r -inul "C:\A... 

这样你只能看到回声。

再次感谢 ;)

问候亚历杭德罗

如何处理普通的GNU tar和gzip? 它们都可以在UnxUtils包中find,并构成我们备份策略的很大一部分。

恐怕winrar不提供命令行开关来改变它的详细程度。 具有讽刺意味的是,它允许更改gui进度条。 😉

我会假设一个CPU /磁盘指标可以被用来知道它仍然是嘎吱嘎吱。

抱歉。