Board logo

标题: [问题求助] VBS怎样自动新建文件目录并自动备份? [打印本页]

作者: liaobiaoxing    时间: 2012-3-10 11:29     标题: VBS怎样自动新建文件目录并自动备份?

我的想法是将这个VBS放进启动项里。在每一天开机时在e:\下生成以当前日期命名的文件夹,当到了新的一个月的时候,将之前一个月生成的文件夹包括下面的文件全备份进e:\backup下面以月份命名的目录里。问题是,有的时候新月份的1号是周六或是周日,不上班的,也许就变成2号或是3号是新的月份头一天上班。之前用批处理是取其中一个文件夹的文件名,以月份来进行时间对比的。现在求个VBS脚本。最好不要生成临时文件。谢谢。
作者: find    时间: 2012-3-10 13:21

把你之前那个批处理贴出来看看啊,这个是不需要临时文件的。
作者: yuihi    时间: 2012-3-12 11:45

你所说的每月头一天是周末的情况,应该要用到临时文件夹吧。
解决这个问题,我的思路:建一EXCEL或TXT,用于存当前月份。每天开机时取当天的月份,与EXCEL或TXT中的月份比较,相同则跳过。不同则剪切前一月的所以文件夹至e:\backup,并改写EXCEL或TXT中的月份。
作者: liaobiaoxing    时间: 2012-3-12 16:28

这个是我自己写的,在WIN7环境下的,在XP下不会正常运行,因为XP的%date%跟WIN7的有一些区别,稍改一下就可以了。
  1. @echo off
  2. cd /d E:\
  3. for /f %%i in ('dir /b ????-??-??') do set da=%%i
  4. if %date:~0,-3% gtr %da:~0,-3% (
  5. echo 正在将%da:~5,2%月份故障文件转移到%da:~0,4%年%da:~5,2%月,请稍等。
  6. ping -n 2 127.1>nul
  7. for /f %%j in ('dir /b ????-??-??') do xcopy /i /e /y %%j E:\以前\%da:~0,4%年%da:~5,2%月\%%j
  8. for /f %%k in ('dir /b ????-??-??') do rd /s /q %%k
  9. )
  10. if not exist %date% md %date%
复制代码
求一个VBS版本。




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2