![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-09-23 13:29 |
共 47,812 主题排行 / 349,917 发帖 / 今日 0 篇 / 48,273 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 这样的批处理怎么写! |
| 可打印版本 1,719 / 3 |
| 第1楼 表情 | 发表于 2004-12-15 00:00 |
| 初级用户 发帖 5 积分 118 | |
|
这样的批处理怎么写! 系统:adv win2k
实现目标:局域网两计算机之间的文件实现同步。然后运行同步后的文件 计算机A上放置了文件在目录aaa下xxx.exe,并设置了共享。 计算机B可以登陆计算机A(用户名和密码)。 计算机B上有一个目录BBB下有xxx.exe文件 问题: 现在已经在计算机B上实现自动登陆计算机A并把共享目录映射为计算机B上的一个盘符R: 现在想通过文件比较。只要计算机A上的文件和本地计算机B上的文件不一样就执行copy(日期不一样就可以、还有就是如果本地计算机上没有此文件也拷贝,都是xxx.exe)拷贝完成以后执行xxx.exe。 现在就缺少一个批处理。 如果有了批处理就可以+win的计划任务完成全自动了。 哪位仁兄給写一下批处理。在下谢过了 用fc 和 comp就可以吗!劳驾写出批处理。---------- ---------- 现在实现了用语句for可以把文件的日期显示出来就是用for /f "skip=3" %a IN ('dir e:\a\xxx.exe' do @if exist %a echo %~ta可是怎么去比较是不是用set命令。可是我写在批处理里面怎么这些命令就不对了。who知道。 老是报错。可是在命令行下是正常的。 郁闷~~~ |
|
| 第2楼 表情 | 发表于 2004-12-16 00:00 |
| 初级用户 发帖 5 积分 118 | |
|
再接再厉。我终于成功了。
就是为什么写到批处理里面无法执行。 在命令行下可以。为什么阿。 @echo off if EXIST xxx.exe goto cmp xcopy r:\aaa\xxx.exe :cmp for /f "skip=3" %%a IN ('dir r:\aaa\xxx.exe' do @if exist %%a set var1=%%~tafor /f "skip=3" %%a IN ('dir xxx.exe' do @if exist %%a set var2=%%~taif %var1%==%var2% do goto end copy r:\aaa\xxx.exe /yy xxx.exe :end ---------------- 怎么样才可是if能用因为var1中间有空格。 |
|
| 第3楼 willsort | 发表于 2004-12-16 00:00 |
| 元老会员 发帖 1,512 积分 4,432 | |
|
Re 表情:
解决var的空格问题,可以在var1,var2的两侧加上引号,如同 if "%var1%"=="%var2%" do goto end 此方法不适用于win9x/dos6.xx(在其环境下,需要先输出至文件中,再用fc+find判断)。 另:你的语句中的do似是多余,改为以下形式试试: if "%var1%"=="%var2%" goto end |
|
| 第4楼 表情 | 发表于 2004-12-17 00:00 |
| 初级用户 发帖 5 积分 118 | |
|
谢谢楼上的。自己真苯阿
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |