批处理 复制一个文件到 其他机器的目录
发布网友
发布时间:2024-10-21 07:29
我来回答
共2个回答
热心网友
时间:2024-11-05 00:40
@ECHO OFF
IF NOT EXIST "%CD%\SUCCESS" md "%CD%\SUCCESS"
IF NOT EXIST "%CD%\FAIL" md "%CD%\FAIL"
SET "A=a.LNK"
SET "B=C:\link"
FOR /F "usebackq delims= " %%I IN ("%CD%\machinename.TXT") DO (
IF NOT EXIST "\\%%I\c$\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup\%A%" (
COPY /Y "%B%\*.*" "\\%%I\c$\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup\" & ECHO COPY SUCCESS! > "%CD%\SUCCESS\%%I.LOG"
)
IF NOT EXIST "\\%%I\c$\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup\%A%" (
DEL /Q "%CD%\SUCCESS\%%I.LOG" & ECHO COPY FAIL! > "%CD%\FAIL\%%I.LOG"
) ELSE (
ECHO COPY SUCCESS! > "%CD%\SUCCESS\%%I.LOG"
)
)
ECHO 操作完成!具体情况请看LOG。
PAUSE > nul
PS:首先将计算机名录入machinename.txt,一行一条计算机名,将它与批处理放在同一个文件夹里,比如桌面上。machinename.txt格式如下:
A01
A02
A03
…
其次将SET "A=a.LNK"里的a.LNK改成你需要复制过去的文件,我想你应该是要复制一个快捷方式吧?还有SET "B=C:\link"的路径也需要核对一下,看是否是a.lnk所在的文件夹。其实这样设置是方便以后修改其他路径使用的。运行过一次之后,你可以检查一下FAIL里面的记录信息,记录文件都是以"计算机名.LOG"的格式记录的,有多少个文件就是有多少台计算机复制失败,你可以将复制失败的计算机名重新收集成machinename.txt,替换之前的machinename.txt文件重新运行即可。
表述得有点模糊,不好意思。如调试有问题,可HI我或到我BLOG给我留言。
祝圣诞快乐!
热心网友
时间:2024-11-05 00:39
反正你先保证不用批处理可以成功,
就是说你在WINDOWS2003可以直接访问和放文件到WINDOWS2000的目录,如果做不到就别想批处理了。你不成功是不是你没有设置好共享权限???
登陆WINDOWS2000的目录要密码吧,用批处理语句是:
net use \\IP\ipc$ "密码" /user:"用户名"
首先设置WINDOWS 2000的电脑共享个目录,然后知道这个电脑的IP地址,在DOS下输入IPCONFIG。以下我假设IP是192.168.0.56
假如WINDOWS 2003的文件是C:\abc.exe,则在这电脑上运行这个批处理。
批处理代码是:
COPY c:\abc.exe \\ip\共享目录\
LZ,已经很详细了,不加点F咋对的起党。哈哈!