Board logo

标题: [文本处理] 根据系统日期复制文件的批处理在Win2k中为何报错? [打印本页]

作者: hejiling    时间: 2011-3-6 21:12     标题: 根据系统日期复制文件的批处理在Win2k中为何报错?

在windows2000server运行时显示找不到文件高手请赐教:
            小弟在windows2000 server DOS版本是5.0的,运行  cmd /c copy "本地路径\%date:~0,4%%date:~5,2%%date:~8,2%2000.dmp"这个批处理时,显示:星期四-01-2000.dmp找不到系统指定的文件,无法复制。但我在windows2003和XP里运行是正常,而且DOS版本是5.1以上,请问是不是dOS版本的问题,如果是这个问题,是要改语句还是升级DOS版本。谢谢
作者: Batcher    时间: 2011-3-6 22:30

2000、XP、2003里面没有DOS,那是CMD。
5.0啥的,是Windows的版本号。
报错是因为不同的系统,可能日期格式存在差异。

参考:批处理标准化获取当前系统日期
http://bbs.bathome.net/thread-3328-1-1.html
作者: hejiling    时间: 2011-3-7 22:03     标题: 请赐教

非常感谢高手指教,我是初学者有些看不懂,我就是在windows2000中做个定时拷贝带时间的数据库文件2011030420.dmp任务,在执行copy "d:\1\%date:~0,4%%date:~5,2%%date:~8,2%20.dmp"中报错,那该怎么写呢,请高手指教。
作者: Batcher    时间: 2011-3-7 22:59     标题: 回复 3楼 的帖子

开始
运行
cmd
echo %date%
看看结果是什么
作者: hejiling    时间: 2011-3-8 14:51     标题: 星期在前,日期在后

在win2000里运行

echo %date%

星期二,2011-03-08

星期在前,日期在后.
作者: CrLf    时间: 2011-3-8 15:08

果然迥异于xp...
那就改成copy "d:\1\%date:~-10,4%%date:~-5,2%%date:~-2%20.dmp"
作者: hejiling    时间: 2011-3-11 18:50     标题: 在win2000中cmd里执行报错

在win2000中cmd里执行报错:echo  %date:~-10,4%%date:~-5,2%%date:~-2%20.dmp    得:2011date:~-5,2%20.dmp,不知道是怎么回事。
作者: Batcher    时间: 2011-3-11 19:28     标题: 回复 7楼 的帖子

自己学习一下字符串截取吧

批处理set命令截取字符详解
http://bbs.bathome.net/thread-996-1-1.html

批处理set命令变量字符截取点点通
http://bbs.bathome.net/thread-40-1-1.html

批处理新手set命令截取字符练习工具
http://bbs.bathome.net/thread-1149-1-1.html
作者: hejiling    时间: 2011-3-22 12:39

谢谢,现在可以用了,不过我的数据库一个有7G左右,有点大,硬盘吃不消,在win2000里如何删除几天前的备份如:2011031120.dmp,批处理该怎么写。
作者: Batcher    时间: 2011-3-22 13:12

9# hejiling


批处理删除指定天数日期之前的文件
http://bbs.bathome.net/thread-3334-1-1.html




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