吸血伯爵不好惹番外篇:怎么写批处理命令?

来源:百度文库 编辑:高校问答 时间:2024/05/04 15:42:22
我想在vb+access的系统中实现数据备份和数据恢复功能,有人说写个批处理命令就可以了,但是我不知道该怎么写,具体该怎么做,是不是能实现,请高手指教!

我来给个参考答案
我没用过Access
但是我用Delphi
它的备份风格是在原来的扩展名前加"~"形成新的扩展名
比如main.pas在备份后就成了main.~pas
这样的功能用批处理也可以完成
数据库我现在还是个菜鸟
但是我想你的意思是把一些数据源备份吧
这样的话可以采用更改扩展名的办法
这样直接运行是打不开的
可以起到保护文件的作用
也可以在原来的名字前加前缀
比如备份文件前加"BAK-"也行

不知道你喜欢哪种方法
我觉得更改扩展名更好
下边我就实现这个方法
我现在不知道你所要处理的文件是什么扩展名
为了是程序更具有通用性
我留出空间让楼主自行更改

文件Backer.bat:
@echo off
if %1.==. goto end
if %2.==. goto bak
goto unBak
:bak
for %%I in (*) do @if %%~xI==.%1 copy /Y %%I %%~nI%%~xIB
goto end
:unBak
for %%I in (*) do @if %%~xI==.%1B (copy /Y %%I %%~nI.%1 && del %%I)
:end
比如要执行备份所有的txt文件,则运行命令
backer txt
则所有的txt文件都有了一个相应的以txtB为扩展名的备份
如果要将备份还原
那么打上命令
backer txt sss
则备份文件被还原
同时删除备份文件
其中sss是任意参数
但是这样还是没有实现自动
我们将另外建一批处理来调用它
文件bak.bat:
@echo off
call backer txt
call backer doc
call backer exe
call backer bmp
扩展名很多
加上你想要的
文件return.bat
@echo off
call backer txt h
call backer doc h
call backer exe h
call backer bmp h
就好了

由于楼主你说得不是十分清楚
我也就先说这么多了
备份和还原其实也可以做到同一个文件里
也许你要处理还不只是单一目录
而是所有的目录包括子目录
这可以用for命令解决
需要的话我再帮你

先用文本文件编写,完成后保存退出,把后缀改为.BAT就可以了!

VB+Access系统数据库的备份最简单的就是吧Access数据库 *.mdb拷贝到某个地方,按照某种方式命名

还原的时候再拷贝过来..

这样都是文件的操作,相对于数据库的什么批处理写起来简单多了

我用Access数据库写系统都是这么处理的,

可以参考.

用文本文件编写,完成后以另存为文件名.BAT就可以了.批处理的COPY命令注意源文件路径和文件名正确,目标文件路径正确,目标目录夹存在.
COPY C:\源文件名.MDB D:\*.MDB