批处理命令 备份文件

需求:输入文件夹名称,将该文件夹及内部所有文件备份到另一磁盘下,其中某一个文件夹不备份(由于该文件夹太大,超过1G).然后对备份文件夹进行压缩.完成备份工作.

 

1.如何实现其中一个文件夹不备份?

由于该文件夹太大,所以不能先xcopy,再deltree的方法

方法1:

使用存档属性集,在源文件夹里找到不希望备份的文件夹,对其右键->属性->高级->剔除"可以存档文件夹"

使用命令:xcopy  "[源地址]" [目标地址] /a

方法2:

先将不希望复制的文件夹地址写进一个txt文件,然后在xcopy命令中排除(exclude)这个地址

此方法不需要设置文件夹属性.

使用命令:

echo [不希望复制的文件路径] > list.txt

xcopy  "[源地址]" [目标地址]  /e /c /q /y /exclude:list.txt
del list.txt /f

 

2.如何实现手工控制要复制哪一个文件夹?

set /p f=输入要备份的文件夹名:

rem 以下一句是将录入的小写字母转为大写(为统一文件夹大小写)

for %%i in (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) do call set f=%%f:%%i=%%i%%

rem 对备份的文件需要跟上备份日期.如:备份的文件夹名为:Source,备份后的文件夹是:SOURCE_20091208

rem 所以这里对目标文件夹改名:

set /a curdate=%date:~0,4%%date:~5,2%%date:~8,2%

xcopy  "D:/%f%/*.*" E:/%f%_%curdate%/ /e /c /q /y /exclude:list.txt

(其中%f%变量是输入的文件夹名,%curdate%变量是当前日期)

 

3.如何实现对备份文件夹的压缩?

方法1:

将C:/Program Files/WinRAR/ 目录下的Rar.exe 文件复制到 C:/WINDOWS/system32文件夹下

(根据实际安装目录操作)

在批处理命令中执行:

rar a [新文件名.rar] [原文件夹名] 

(中括号是为查看清晰,实际语句中没有)

更多命令可以执行:

rar /?

 

方法2:

如果没有将文件复制到system32的权限.

以上语句可以改为:

"C:/Program Files/WinRAR/rar.exe" a [新文件名].rar [原文件名] -df -inul -y

参数说明

-df:压缩后删除备份的文件夹

-inul:不显示压缩过程中产生的信息

-y:所有中途产生的对话框,均回答yes

 

任务完成.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值