Board logo

标题: [求助]请教一个批处理问题 [打印本页]

作者: 温柔一键     时间: 2004-11-7 00:00    标题: [求助]请教一个批处理问题

请教各位大侠:我单位每天要进行数据库备份,在服务器桌面建立了一个批处理文件,只要双击就可完成自动备份。但要修改备份文件名(文件名中须包括当前时间),再压缩并删除原文件。能不能在批处理文件中用什么命令实现自动更新时间、打包并删除原文件?
比如:批处理中备份路径和文件名是:F:\backup\data_20041107_506 如果明天再备份,可不可以把文件名中的20041107自动更新为20041108?
作者: autoit     时间: 2004-11-7 00:00
在本坛搜索一下吧!在你电脑上看看date /t 输出什么结果然后可以用下列语句[看着改吧]for /f "tokens=1,2,3 delims=/ " %a in ('date /t') do @echo %a%b%cfor /f "tokens=3,2,1 delims=/ " %a in ('date /t') do @echo %a%b%c结果能输出2004-11-08来,若要20041108就要for /f "tokens=3 delims=/ " %a in ('date /t') do @echo %单独提取然后在组合...论坛里搜索一下for 的命令吧!
作者: 温柔一键     时间: 2004-11-11 00:00    标题: 非常感谢

我实在太菜,研究了两天仍无果。
我的批处理文件是用记事本写的这么一句:
exp80 si_yw/r839127 file=E:\bak\yl20041111_lgx_506.dmp owner=si_yw,si_cw,ctrlog
然后存成bak.bat就行了,需要备份时双击即可。现在主要想把20041111改成当天的日期,应该怎么改呢?
作者: chenall     时间: 2004-11-15 00:00
首先用DATE /T看一下输出的是什么格式.比如我的电脑输入的是:2004-11-15 星期一那就用以下命令for /f "tokens=3,2,1 delims=- " %%i in ('date /t') do set dt=%%i%%j%%kexp80 si_yw/r839127 file=E:\bak\yl%dt%_lgx_506.dmp owner=si_yw,si_cw,ctrlog
作者: 温柔一键     时间: 2004-11-15 00:00
多谢!明天用这个备份一下试试。是不是把这两行都写进批处理文件中?for /f "tokens=3,2,1 delims=- " %%i in ('date /t') do set dt=%%i%%j%%kexp80 si_yw/r839127 file=E:\bak\yl%dt%_lgx_506.dmp owner=si_yw,si_cw,ctrlog

[此贴子已经被作者于2004-11-15 21:26:56编辑过]