Board logo

标题: [文件操作] 批处理文件中XCOPY命令提示不能执行周期性复制是怎么回事呢? [打印本页]

作者: luobutou    时间: 2011-12-6 13:00     标题: 批处理文件中XCOPY命令提示不能执行周期性复制是怎么回事呢?

之前还是好的。
  1. @ECHO OFF   
  2. set dst=%date:~0,4%%date:~5,2%%date:~8,2%
  3. md d:\GSTDB1\%dst%
  4. net stop mssqlserver
  5. xcopy /csef d:\GSTDB1\*.* d:\GSTDB1\%dst%
  6. net start mssqlserver
复制代码

作者: CrLf    时间: 2011-12-6 13:11

  1. xcopy /csef d:\GSTDB1\*.* d:\GSTDB1\%dst%
复制代码
隐含了 xcopy /csef d:\GSTDB1\%dst%\*.* d:\GSTDB1\%dst% ,目标文件夹 2 是目标文件夹 1 的子集,所以报错
作者: luobutou    时间: 2011-12-6 13:27

版主,我之前的也是对的啊,就是上周发现没拷贝文件,问题是我SQLSERVER备份的文件就是在GSTDB1根下面,我想每天建一个当前的日期,然后将根下面文件拷到当前日期目录夹里面去。
作者: luobutou    时间: 2011-12-6 16:10

在吗版主救救我啊,还是不行哦。
作者: CrLf    时间: 2011-12-6 19:34

我不知道目的和背景怎么改呢...
这代码只是有逻辑问题,就像莫比乌斯环那样,母集本身是其众多的子集之一,这在一般的逻辑上是无法成立的,假如要你把在场的所有人举起来,你能把自己举起来吗?
作者: luobutou    时间: 2011-12-7 13:43

我SQLSERVER备份的目录是d:\GSTDB1,我希望每天在d:\GSTDB1下建一个日期的目录,先停止SQLSERVER,然后拷贝到日期目录下面,然后再重启SQLSERVER.谢谢版主了。
作者: luobutou    时间: 2011-12-7 14:25

我把这句改成这样了,xcopy /c/s/e/f d:\GSTDB1\*.* d:\GSTDB1BACKUP\%dst% ,拷贝到另外一个目录去,可是现在有提示如20111207是一个目录吗,出一个选项提示,我加了/c/s/e/f怎么还会有提示。
作者: CrLf    时间: 2011-12-7 15:48

回复 7# luobutou


    这样备份?那你的文件大小将是 2 的 days 次方个单位,恐怕不到一个月就放不下了...那句加个 \ 即可:
xcopy /c/s/e/f d:\GSTDB1\*.* d:\GSTDB1BACKUP\%dst%\




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