远程拷贝批处理

远程拷贝批处理 

 

在工作中我们经常碰到要考很多相同的文件到不同机器相同的目录下面。通常我们是拷贝文件到u盘,然后在一个一个机器去拷贝。这是最基础也是最容易想到的方法。

 

      或者我们可以把要拷贝的文件放到某个机器(如机器A)上面的共享文件夹中,然后到目标机(如机器B)上run窗口中输入机器A的IP地址,如 //192.168.1.100. 这样我们就可以看到对应的共享的目录及其文件,然后进行拷贝。

 

     或者我们写一个简单的批处理。如copy //192.168.1.100/share/NeedCopiedFile.dat D:/TestCopy/NeedCopiedFile.dat. 这样就是把远程机器192.168.1.100上面共享文件夹share下面的文件拷贝到本地D:盘下面了。不过这样必须把这样批处理拷贝到每个目标机上。

 

 

      其实还有一种更好的办法。就是用net use命令先与目标机建立连接,接着映射远程磁盘为本地的一个磁盘, 然后进行拷贝。下面是一个示例,作用是先备份远程机器上文件(就是重命名)然后进行拷贝:


@net use //%1/ipc$ "wtfints&!" /user:ncslocaladmin
@if not errorlevel 0 echo fail to connnect to remote machine & goto END
@net use z: //%1/c$
@if not errorlevel 0 echo fail to access remote machine c driver & goto END

@rem examclient.exe
@rename "z:/Program Files/ST Electronics/MERiTS CRMS/Examclient.exe" Examclient.exe.bakup
@if not errorlevel 0 echo rename Examclient.exe & goto END
@copy "D:/CRMS/CRMS/output/nodog_release/examclient.exe" "z:/Program Files/ST Electronics/MERiTS CRMS/Examclient.exe"
@if not errorlevel 0 echo fail to copy examclient.exe


@rem student.exe
@rename "z:/Program Files/ST Electronics/MERiTS CRMS/Student.exe" Student.exe.bakup
@if not errorlevel 0 echo rename student.exe & goto END
@copy "D:/CRMS/CRMS/output/nodog_release/student.exe" "z:/Program Files/ST Electronics/MERiTS CRMS/student.exe"
@if not errorlevel 0 echo copy student.exe

@net use z: /del

:END

版权所有,禁止转载. 如需转载,请先征得博主的同意,并且表明文章出处,否则按侵权处理.

    分享到:

留言

你的邮箱是保密的 必填的信息用*表示