【发布时间】:2015-09-12 00:55:56
【问题描述】:
我正在尝试连接到网络驱动器,复制文件并将其移动到另一个位置,并记录是否成功。这是我到目前为止得到的:
@echo off
@setlocal enableextensions enabledelayedexpansion
if exist Transfer_logfile.txt (
ECHO Y | del Transfer_logfile.txt
)
set LogFile=_logfile.txt
set logg=^> _^&^& type _^&^&type _^>^>%LogFile%
for /F "tokens=*" %%A in (ipaddresses.txt) do (
net use \\%%A\c$\test /USER:test %logg%
echo copying files across to %%A... %logg%
COPY -f -R -Y C:\test\test.exe \\%%A\c$\test\test.exe %logg%
echo Copy completed.. %logg%
net use \\%%A\c$\test /delete /Y %logg%
)
pause
任何有关如何完成此任务的帮助将不胜感激。
我正在努力保存输出中的任何错误。如果它出错,我希望它只是保存它在输出中失败并继续到 IP 地址文本文件中的下一个 IP。
我认为,我需要在网络使用中包装一个 if,以检查 IP 地址是否首先 ping。但是这不起作用。
@echo off
@setlocal enableextensions enabledelayedexpansion
if exist Transfer_logfile.txt (
ECHO Y | del Transfer_logfile.txt
)
set LogFile=_logfile.txt
set logg=^> _^&^& type _^&^&type _^>^>%LogFile%
for /F "tokens=*" %%A in (ipaddresses.txt) do (
ping -n %%A > NUL
IF ERRORLEVEL 0 (
echo
ELSE goto :skipcopyhost1
net use \\%%A\c$\test %logg%
echo copying files across to %%A... %logg%
COPY -f -R -Y C:\test\test.exe \\%%A\c$\test\test.exe %logg%
echo Copy completed.. %logg%
net use \\%%A\c$\test /delete /Y %logg%
)
pause
【问题讨论】:
-
你希望log的内容代表什么?此外,您的复制标志不是窗口。
标签: windows batch-file cmd