系统: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知道。
老是报错。可是在命令行下是正常的。
郁闷~~~
再接再厉。我终于成功了。
就是为什么写到批处理里面无法执行。
在命令行下可以。为什么阿。
@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=%%~ta
for /f "skip=3" %%a IN ('dir xxx.exe') do @if exist %%a set var2=%%~ta
if %var1%==%var2% do goto end
copy r:\aaa\xxx.exe /yy
xxx.exe
:end
----------------
怎么样才可是if能用因为var1中间有空格。
Re 表情:
解决var的空格问题,可以在var1,var2的两侧加上引号,如同
if "%var1%"=="%var2%" do goto end
此方法不适用于win9x/dos6.xx(在其环境下,需要先输出至文件中,再用fc+find判断)。
另:你的语句中的do似是多余,改为以下形式试试:
if "%var1%"=="%var2%" goto end