Windows-使用批处理文件覆盖特定文件夹中的现有批处理文件
下面的脚本我正试图从临时目录(在设置为服务器的PC上)复制一个批处理文件,并发送到联网机器上的特定文件夹。它可以复制到主机系统,但不能复制到联网的机器。注意:每个位置都有2-4台联网PC。在复制之前,我会ping每个网络计算机,并在日志中报告断开连接的情况。原木是干净的,因此机器正在连接。我认为它不是复制,因为它必须覆盖现有文件,但我使用/y强制覆盖。我还缺什么?感谢您的帮助Windows-使用批处理文件覆盖特定文件夹中的现有批处理文件,windows,batch-file,Windows,Batch File,下面的脚本我正试图从临时目录(在设置为服务器的PC上)复制一个批处理文件,并发送到联网机器上的特定文件夹。它可以复制到主机系统,但不能复制到联网的机器。注意:每个位置都有2-4台联网PC。在复制之前,我会ping每个网络计算机,并在日志中报告断开连接的情况。原木是干净的,因此机器正在连接。我认为它不是复制,因为它必须覆盖现有文件,但我使用/y强制覆盖。我还缺什么?感谢您的帮助 echo off set "REGNAME=%COMPUTERNAME:~0,12%" set "REG1NAME=%
echo off
set "REGNAME=%COMPUTERNAME:~0,12%"
set "REG1NAME=%COMPUTERNAME:~0,11%1"
set "REG2NAME=%COMPUTERNAME:~0,11%2"
set "REG3NAME=%COMPUTERNAME:~0,11%3"
set "REG4NAME=%COMPUTERNAME:~0,11%4"
rem copy batch files in the RDS directory that redirect eClock and eClock1
rem copy the batch files temp to rds on REG1
copy /y c:\temp\eClock_Call.bat C:\RDS
copy /y c:\temp\eClock1_Call.bat C:\RDS
rem copy the batch files to REG2
copy /y c:\temp\eClock_Call.bat \\%REG2NAME%\C$\RDS
copy /y c:\temp\eClock1_Call.bat \\%REG2NAME%\C$\RDS
rem If REG3 exists, copy the batch file to REG3
ping %REG3NAME%
If %ERRORLEVEL% EQU 1 GOTO :ENDSCRIPT
copy /y c:\temp\eClock_Call.bat \\%REG3NAME%\C$\RDS
copy /y c:\temp\eClock1_Call.bat \\%REG3NAME%\C$\RDS
rem If REG4 exists, copy the batch file to REG4
ping %REG4NAME%
If %ERRORLEVEL% EQU 1 GOTO :ENDSCRIPT
copy /y c:\temp\eClock_Call.bat \\%REG4NAME%\C$\RDS
copy /y c:\temp\eClock1_Call.bat \\%REG4NAME%\C$\RDS
:ENDSCRIPT
您似乎没有执行
ping
“REG2”,如果ping
返回“RG3”或“REG4”的errorlevel 1,则您将分支到:endscript
而不是下一台机器。谢谢,每个位置至少有两台机器。所以我们希望它能联系起来,因为他们整天都在聊天。我将为REG2添加一个ping行。感谢您的反馈。正在查找有关为什么它可能无法将文件处理到REG2和其他文件的详细信息。%computername%
没有空格,是吗?使用echo on
运行脚本,查看实际执行的内容。谢谢。这帮了大忙。看来我的安全小组已经锁定了网络机器,没有告诉我们!我被拒绝访问,但当机器打开时,它可以正常复制。