中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: [求助]自动备份问题 上一主题 | 下一主题
explore888
新手上路





积分 10
发帖 4
注册 2007-11-30
状态 离线
『楼 主』:  [求助]自动备份问题

sql2000的数据库
有20个bak文件。这20个是每天备份一个的。
文件名是以时间自动命名的。
我想找出最新的一个bak文件。备份到FTP上去
在FTP上删掉以前的   只保留最新的两个。

2007-11-30 21:19
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fastslz
铂金会员

DOS一根葱


积分 5493
发帖 2315
注册 2006-5-1
来自 上海
状态 离线
『第 2 楼』:  

自动命名的文件时间格式?



第一高手    第二高手

2007-11-30 21:31
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
explore888
新手上路





积分 10
发帖 4
注册 2007-11-30
状态 离线
『第 3 楼』:  

main_db_200711290800.BAK
main_db_200711300800.BAK
main_db_200712010800.BAK

2007-12-1 12:20
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fastslz
铂金会员

DOS一根葱


积分 5493
发帖 2315
注册 2006-5-1
来自 上海
状态 离线
『第 4 楼』:  

发错了

[ Last edited by fastslz on 2007-12-1 at 02:00 PM ]



第一高手    第二高手

2007-12-1 13:58
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fastslz
铂金会员

DOS一根葱


积分 5493
发帖 2315
注册 2006-5-1
来自 上海
状态 离线
『第 5 楼』:  


@echo off
for /f "delims=" %%a in ('dir /b /a-d /od D:\test\*.bak') do (
       for /f "tokens=2* delims=_" %%i in ('echo.%%a') do call :slz "%%i" "%%~nj" "%%a"
)
echo 最新日期%most% 对应文件名%file%
echo 次新日期%most1% 对应文件名%file1%
echo FTP没测试环境自己搞定
pause

:slz
set "fdate=%~2"
if not defined fdate goto:eof
set "filedate=%fdate:~2,-2%"
if not defined most set "most=0"
if %filedate% gtr %most% (
   set "most=%filedate%"
   set "most1=%most%"
   set "file=%~3"
   set "file1=%file%"
)
goto:eof


   此帖被 +1 点积分    点击查看详情   
评分人:【 explore888 分数: +1  时间:2007-12-1 14:56




第一高手    第二高手

2007-12-1 14:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
explore888
新手上路





积分 10
发帖 4
注册 2007-11-30
状态 离线
『第 6 楼』:  

谢谢你
在登陆FTP后 怎么样 把这个变量上传上去


我用下面的实现了自动登陆
BAT批处理实现登陆FTP
假设登陆 ftp://192.168.0.1  ,登陆用户: admin ,密码: pass ,上传文件c:\00.txt ,
需要文件c:\test.bat 和 c:\test.scr

test.bat文件
ftp -n -s:test.scr 192.168.0.1


test.scr文件
user admin
pass
put c:\00.txt
quit

2007-12-1 14:51
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fastslz
铂金会员

DOS一根葱


积分 5493
发帖 2315
注册 2006-5-1
来自 上海
状态 离线
『第 7 楼』:  

FTP我盲区,很难回答
或许你可以echo一个test.scr
@echo off
for /f "delims=" %%a in ('dir /b /a-d /od D:\test\*.bak') do (
       for /f "tokens=2* delims=_" %%i in ('echo.%%a') do call :slz "%%i" "%%~nj" "%%a"
)
echo 最新日期%most% 对应文件名%file%
echo 次新日期%most1% 对应文件名%file1%
>test.scr echo user admin
>>test.scr echo pass
>>test.scr echo put "%file%"
>>test.scr echo put "%file1%"
>>test.scr echo quit
ftp -n -s:test.scr 192.168.0.1
pause

:slz
set "fdate=%~2"
if not defined fdate goto:eof
set "filedate=%fdate:~2,-2%"
if not defined most set "most=0"
if %filedate% gtr %most% (
   set "most=%filedate%"
   set "most1=%most%"
   set "file=%~3"
   set "file1=%file%"
)
goto:eof
筛选删除FTP上我无能为力



第一高手    第二高手

2007-12-1 16:15
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
explore888
新手上路





积分 10
发帖 4
注册 2007-11-30
状态 离线
『第 8 楼』:  

可以在FTP机上搞批处理找出上传的按时间最新的两个文件保存起来。别的都删了。也可以啊

2007-12-1 16:59
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: