日期:2014-05-17  浏览次数:21219 次

windows下文件夹拷贝bat脚本
需求描述如下(环境为windows):
    A机器上有一个数据库作业定期生成的Excel文件,希望能用一个程序把Excel文件发送到邮箱里,但是A机器由于端口等的限制不能发送邮件,而局域网内的B机器可以发送邮件,又不想用ftp,比较麻烦(可能端口也有问题),所以希望在B机器上用计划任务通过脚本把A机器上每天新生成的Excel拷贝到B机器。
    总之就是,把A机器上每天新生成的文件拷贝到B机器某个文件夹下。

前提知识:
    1. windows下有一个命令XCOPY,可以实现文件下下文件的拷贝(详细可以去百度),如a.bat,可以拷贝日期2012-02-21后的数据,从E:\xcopy\1目录到E:\xcopy\2目录。
XCOPY E:\xcopy\1 E:\xcopy\2 /D:02-21-2012
pause

    2.我们可以通过双斜杠的方式访问局域网内另外一台机器的文件夹目录
如:\\192.168.85.136\d$

结果:
    以下脚本就是拷贝另一台机器上每天新生成的文件到本机,先获取每天的日期,并生成mdy的格式,然后作为参数传递给XCOPY命令。
set "Mdy=%date:~5,2%-%date:~8,2%-%date:~,4%"
XCOPY \\192.168.85.136\d$\SMSSLog E:\SMSSLog\ /D:%Mdy%
pause

    代码的作用就是拷贝192.168.85.136机器上D:\SMSSLog下每天新生成的文件到本机E:\SMSSLog\目录。
1 楼 llbupt 2012-05-31  
你好,我使用这个命令时出现了“无效的驱动器格式”,你出现过这个问题吗
2 楼 Ajita 2012-05-31  
llbupt 写道
你好,我使用这个命令时出现了“无效的驱动器格式”,你出现过这个问题吗

没有。使用这个命令之前,你先用常规的方式访问一下要拷贝的目录试试。就是win+R,输入地址试试。