![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-02 06:50 |
共 48,037 主题排行 / 350,122 发帖 / 今日 2 篇 / 48,250 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 批处理求教。。。 |
| 可打印版本 1,968 / 12 |
| 第1楼 jieok3375 | 发表于 2006-09-21 00:26 |
| 中级用户 发帖 130 积分 282 来自 广东 | |
|
批处理求教。。。 因每次都要去LAN中的另一台电脑中去登录文件(file1,file2),但file1,file2时常被人删
偶就编了下面的批处理(偶是菜鸟),用做file1,file2备份,偶想做的更好些,请大家帮忙。 要求:1、在建立边接之前先判断要边的那个IP在不在,在则边,不在给出提示,退出或直接退出。 2、能不能用errorlevel 代替else ,可以的话,请帮忙写出来,偶不会用errorlevel goto。 也不懂返回码,,,那位大虾懂,,教下偶,,, 3、有更好的批处理,请贴出来,,多谢。。。 4、如何判断命令执行后的返回码,,请教大虾们。。。。 ==============begin================================ @echo off net use \\ip address\share password /user:userneme if exist \\ip address\share\file1 ( copy \\ip address\share\file1 f:\backup ) else ( copy f:\backup\file1 \\ip address\share ) if exist \\ip address\share\file2 ( copy \\ip address\share\file2 f:\backup ) else ( copy f:\backup\file2 \\ip address\share ) exit ==============end=================================== |
|
| 第2楼 9527 | 发表于 2006-09-21 00:48 |
| 银牌会员 发帖 438 积分 1,185 来自 北京 | |
|
在你的基础上稍微的改了一下,先试试吧
@echo off net use \\ip address\share password /user:userneme 2>nul||goto quit if exist \\ip address\share\file1 ( copy \\ip address\share\file1 f:\backup ) else ( copy f:\backup\file1 \\ip address\share ) if exist \\ip address\share\file2 ( copy \\ip address\share\file2 f:\backup ) else ( copy f:\backup\file2 \\ip address\share ) exit :quit echo 对不起,对方也许不在线!!! goto :eof |
|
| 第3楼 vkill | 发表于 2006-09-21 01:07 |
| 金牌会员 发帖 1,744 积分 4,103 来自 甘肃.临泽 | |
|
要执行命令 && 成功 || 不成功
大概是这个意思,楼主随便写个测试下 |
|
| 第4楼 pengfei | 发表于 2006-09-21 01:38 |
| 银牌会员 发帖 485 积分 1,218 来自 湖南.娄底 | |
|
其实楼主的代码已经很优了, 用else比返回值判断要好.
pip的代码也解决了先判断IP是否存在, 如果不通则加快了脚本的执行时间, 直接退出来了, 而不用执行下面两个if语句 |
|
| 第5楼 jieok3375 | 发表于 2006-09-21 22:57 |
| 中级用户 发帖 130 积分 282 来自 广东 | |
|
偶试了,2楼的方法可以,,但偶不明白加“2>nul||goto quit”是什么意思,,还有:goto :eof” ,,也不明白有什么用,,,,能否解释一下。。。
多谢……………… |
|
| 第6楼 jieok3375 | 发表于 2006-09-21 23:26 |
| 中级用户 发帖 130 积分 282 来自 广东 | |
|
请高手再指点下…………
那位有相关的资料可以发给我,,给我地址也行,,, 多谢大家 |
|
| 第7楼 3742668 | 发表于 2006-09-21 23:47 |
| 荣誉版主 发帖 718 积分 2,013 | |
偶试了,2楼的方法可以,,但偶不明白加“2>nul||goto quit”是什么意思,,还有:goto :eof” ,,也不明白有什么用,,,,能否解释一下。。。 关于这些用法在本版的很多贴子中都有过讨论,建议你在提问前能多翻翻老贴,多看看 帮助与支持。 2>nul 的作用是 不显示错误的输出 || 的作用是 如果前面的命令执行不成功则执行后面的命令 goto :eof 表示跳转到批处理末尾 |
|
| 第8楼 namejm | 发表于 2006-09-22 01:12 |
| 荣誉版主 发帖 1,737 积分 5,226 来自 成都 | |
|
3742668版主的话还有可以补充的地方,我就来罗嗦两句吧:
&& 与||的作用相反,如果前面的语句执行成功,才执行后面的语句 goto :eof 如果没有自行定义:eof标签段的话,那么,这条语句就是跳转到批处理文件的末尾。因为批处理文件的末尾没有任何语句,所以,这个语句的作用和exit大致相同。之所以不能完全等同于exit,是因为如果用在call语句调用的标签段中,这条语句就不能用exit来替换,因为exit是直接退出CMD窗口,而goto :eof的作用只是跳转到文件的末尾而已。 |
|
| 第9楼 electronixtar | 发表于 2006-09-22 01:52 |
| 铂金会员 发帖 2,672 积分 7,493 | |
|
被删除了是共享权限没设置好
|
|
| 第10楼 samsunle | 发表于 2006-09-22 02:39 |
| 新手上路 发帖 1 积分 2 | |
|
学习中
|
|
| 第11楼 jieok3375 | 发表于 2006-09-22 22:55 |
| 中级用户 发帖 130 积分 282 来自 广东 | |
|
多谢大家,,,偶懂了,,,
再次感谢大家。。。。。 |
|
| 第12楼 namejm | 发表于 2006-10-22 08:18 |
| 荣誉版主 发帖 1,737 积分 5,226 来自 成都 | |
|
──────────────── 版务记录 ──────────────── 执行:namejm 原标题: 批处理求教。。。 说明:因标题过于模糊,不便于论坛的搜索和管理,请在三日内修改标题。 提示:修改标题请在当前帖的右下脚点 编辑,修改完毕之后按 编辑帖子 即可。 处罚:因脱离论坛新人阶段不久,暂时不予处罚;若三日之后尚未修改标题,将扣除4点 积分,以示惩罚,并由版主强制修改标题。请点击这里阅读论坛发帖规定,以避免在 今后的讨论中违规发帖。 ──────────────── 版务记录 ──────────────── |
|
| 第13楼 gxfc | 发表于 2006-10-22 13:57 |
| 新手上路 发帖 11 积分 17 | |
|
学习
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |