中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
« [1] [2] »
作者:
标题: 备份的批处理 上一主题 | 下一主题
qwertl
中级用户





积分 461
发帖 243
注册 2007-10-14
状态 离线
『楼 主』:  备份的批处理

查找本机的accon.dat文件,可能在不同盘符的不同路径,也可能有几个,现要编个批处理,能较高效的搜索找到这个文件的完整路径,然后将其也有可能多个均压缩到F:\backup下,以当前日期为文件名的压缩包,要不出现任何窗口提示

再做该批处理做计划任务.

请说说不同的方法

2009-5-22 12:25
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Hanyeguxing
银牌会员

正在学习中的菜鸟...


积分 1039
发帖 897
注册 2009-3-1
来自 在地狱中仰望天堂
状态 离线
『第 2 楼』:  

批处理使用backup.bat:
@echo off
erase %temp%\han.txt>nul 2>nul
for %%i in (C:,D:,E:,F:) do dir %%i /b/s|findstr /i accon.dat >>%temp%\han.txt
for /f "delims=" %%j in (%temp%\han.txt) do winrar.exe A -CFG- -IBCK-INUL -m5 -agYYYYMMDD F:\backup\ %%j

隐藏cmd 窗口使用backup.vbs
CreateObject("Wscript.Shell").run "F:\backup\backup.bat",0

任务计划使用
sc config Schedule start= auto & net start Schedule
at 20:05 F:\backup\backup.vbs

[ Last edited by Hanyeguxing on 2009-5-22 at 14:11 ]

2009-5-22 14:09
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Hanyeguxing
银牌会员

正在学习中的菜鸟...


积分 1039
发帖 897
注册 2009-3-1
来自 在地狱中仰望天堂
状态 离线
『第 3 楼』:  

说明
winrar.exe,根据情况,一般需要指定他的路径
YYYY 定义4位数字的年
MM 定义2位数字的月
DD 定义2位数字的日
如果在格式化字符串的第一个字符是‘+’,日期字符串和基本压缩文件名位置交换,所以日期将在压缩文件名之前。
开关 -INUL - 禁用错误信息
开关 -CFG- - 忽略默认配置和环境变量
开关 -IBCK - 在后台运行 WinRAR
开关 -M<n> - 设置压缩方式
任务计划可以用at,也可以使用Schtasks

2009-5-22 14:14
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
tireless
银牌会员





积分 2025
发帖 1122
注册 2007-9-5
状态 离线
『第 4 楼』:  

backup.bat
@echo of
setlocal enabledelayedexpansion
for %%a in (c d e f g h i j k l m n o p q r s t u v w x y z) do (
  if exist %%a: set Files=!Files! "%%a:\accon.dat"
)
"C:\Program Files\winrar\rar.exe" a -r -inul -agYYYYMMDD F:\backup\ !Files!
添加计划任务:
sc config Schedule start= auto & net start Schedule
at 20:05 "backup.bat"


2009-5-23 10:39
查看资料  发短消息 网志   编辑帖子  回复  引用回复
qwertl
中级用户





积分 461
发帖 243
注册 2007-10-14
状态 离线
『第 5 楼』:  

二楼的方法dir %%i /b/s |findstr /i accon.dat 太慢了   
用everything的命令提示符es.exe速度要快多了  

http://www.voidtools.com/    附上everything  及es.exe下载网址



楼上的好象只是找根目录下的批处理

[ Last edited by qwertl on 2009-5-23 at 11:22 ]

2009-5-23 11:09
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
tireless
银牌会员





积分 2025
发帖 1122
注册 2007-9-5
状态 离线
『第 6 楼』:  Re 5 楼

会搜索子目录。

  Quote:
@echo of
setlocal enabledelayedexpansion
for %%a in (c d e f g h i j k l m n o p q r s t u v w x y z) do (
  if exist %%a: set Files=!Files! "%%a:\accon.dat"
)
"C:\Program Files\winrar\rar.exe" a -r -inul -agYYYYMMDD F:\backup\ !Files!

[ Last edited by tireless on 2009-6-4 at 03:50 ]

2009-5-23 11:47
查看资料  发短消息 网志   编辑帖子  回复  引用回复
qwertl
中级用户





积分 461
发帖 243
注册 2007-10-14
状态 离线
『第 7 楼』:  

for %%i in (C:,D:,E:,F:) do dir %%i /b/s|findstr /i accon.dat >>%temp%\han.txt

这句如果要加多个文件accon.cfg在一句命令里要怎样写?

2009-6-4 00:35
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
tireless
银牌会员





积分 2025
发帖 1122
注册 2007-9-5
状态 离线
『第 8 楼』:  re 7 楼


(for %%i in (c d e f) do dir /b/s %%i:\accon.dat %%i:\accon.cfg 2>nul)>%temp%\han.txt

dir/b/s c: d: e: f:|findstr /IL "accon.dat accon.cfg" > %temp%\han.txt
或者把 4 楼的改成:

  Quote:
@echo of
setlocal enabledelayedexpansion
for %%a in (c d e f g h i j k l m n o p q r s t u v w x y z) do (
  if exist %%a: set Files=!Files! "%%a:\accon.dat" "%%a:\accon.cfg"
)
"C:\Program Files\winrar\rar.exe" a -r -inul -agYYYYMMDD F:\backup\ !Files!

[ Last edited by tireless on 2009-6-4 at 03:56 ]

2009-6-4 03:42
查看资料  发短消息 网志   编辑帖子  回复  引用回复
qwertl
中级用户





积分 461
发帖 243
注册 2007-10-14
状态 离线
『第 9 楼』:  

谢谢楼上的高人.

2009-6-4 23:27
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
不得不爱
超级版主

我爱DOS


积分 5310
发帖 2044
注册 2005-9-26
来自 四川南充
状态 离线
『第 10 楼』:  

我来个简单点的,就一个命令搞定!
"C:\Program Files\winrar\rar.exe" a -r -inul -agYYYYMMDD F:\backup\ -naccon.dat -naccon.cfg  c: d: e: f: g: h:  i: j: k: l: m: n: o: p: q: r: s: t: u: v: w: x: y: z:
[ Last edited by 不得不爱 on 2009-6-5 at 03:21 ]



我的网络U盘 我的网络第2个U盘
论坛软件下载链接
灵雨飘零论坛  
论坛新手必读,所有人的基本行为准则
刷QQ空间人气、留言的小软件
2009-6-5 00:25
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
tireless
银牌会员





积分 2025
发帖 1122
注册 2007-9-5
状态 离线
『第 11 楼』:  



  Quote:
Originally posted by 不得不爱 at 2009-6-5 12:25 AM:
我来个简单点的,就一个命令搞定!
[code]"C:\Program Files\winrar\rar.exe" a -r -inul -agYYYYMMDD F:\backup\ -naccon.dat -naccon.cfg text c: d: e: f: g: h:  i: j: k: l: m:  ...

经测试,只能添加根目录的文件;text 是多余的

2009-6-5 00:52
查看资料  发短消息 网志   编辑帖子  回复  引用回复
不得不爱
超级版主

我爱DOS


积分 5310
发帖 2044
注册 2005-9-26
来自 四川南充
状态 离线
『第 12 楼』:  

可是我测试是没有问题的啊,-r就会搜索子目录啊 ,不会是你的rar不支持-r吧?(text 的确是多余的)



我的网络U盘 我的网络第2个U盘
论坛软件下载链接
灵雨飘零论坛  
论坛新手必读,所有人的基本行为准则
刷QQ空间人气、留言的小软件
2009-6-5 03:24
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
tireless
银牌会员





积分 2025
发帖 1122
注册 2007-9-5
状态 离线
『第 13 楼』:  我测试的结果:

只添加了根目录的 a.txt:
"C:\Program Files\winrar\rar.exe" a -r -inul -agYYYYMMDD .\root_ -na.txt d: g:
会添加包括子目录的 a.txt:
"C:\Program Files\winrar\rar.exe" a -r -inul -agYYYYMMDD .\sub_ d:\a.txt g:\a.txt
[ Last edited by tireless on 2009-6-5 at 05:18 ]

2009-6-5 05:15
查看资料  发短消息 网志   编辑帖子  回复  引用回复
不得不爱
超级版主

我爱DOS


积分 5310
发帖 2044
注册 2005-9-26
来自 四川南充
状态 离线
『第 14 楼』:  

知道在这么回事了 ,原来是rar(在"C:\Program Files\winrar\rar.exe" a -r -inul -agYYYYMMDD .\root_ -na.txt d: g:这个命令里)读取当前盘时会只读当前目录树!
应该修改为:
"C:\Program Files\winrar\rar.exe" a -r -inul -agYYYYMMDD F:\backup\ -naccon.dat -naccon.cfg  c:\ d:\ e:\ f:\ g:\ h:\  i:\ j:\ k:\ l:\ m:\ n:\ o:\ p:\ q:\ r:\ s:\ t:\ u:\ v:\ w:\ x:\ y:\ z:\
这样就不会出错了!



我的网络U盘 我的网络第2个U盘
论坛软件下载链接
灵雨飘零论坛  
论坛新手必读,所有人的基本行为准则
刷QQ空间人气、留言的小软件
2009-6-6 07:13
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
tireless
银牌会员





积分 2025
发帖 1122
注册 2007-9-5
状态 离线
『第 15 楼』:  re 14 楼

我这里一样只打包了根目录的文件。

2009-6-6 12:46
查看资料  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


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



论坛跳转: