批处理脚本在SMB \ CIFS协议内复制文件

我试图从远程机器上使用这样的结构复制文件

copy smb://DOMAIN;USERLOGIN:[email protected]/folder/ C:/tmp/ 

它显示下一条消息 –

 The filename, directory name, or volume label syntax is incorrect. 

我猜这个win命令“copy”只能和目录一起工作…主要思想是通过SMB协议正确地复制文件在userLogin和密码中。

所以,我正在使用networking,我发现“USE NET”可能对我有帮助。 当我试图使用它时,它说我在同一资源上有多个连接。 然后我试图“使用NET \ COMPNAME \文件夹删除”它表明操作已经执行成功,但在使用“USE NET”的另一次尝试期间有关多个连接的消息仍然相同。

此外 – 如果我可以使这种NET资源,我能够复制\删除文件?

提前致谢。

PS对不起,我英文很差。

– – – – -更新 – – – – – – – – – – – –

正如Somesh提到我使用USE NET从多个地方下载文件但不幸的是login和通过多个连接的问题仍然存在。 我无法使用USE NET在没有参数的情况下在当前机器上find任何活动。 类似的问题在这里: 发生系统错误1219

如果有人在这里感兴趣,那么我的示例脚本是:

 @echo off @echo initializing loop. set disk="T" set destination="D:\downloads\temp" REM set user = "USER" REM set password = "PASS" REM set domain = "DOMAIN" for /F %%S in (shares.txt) do ( @echo start of performing: %%S @echo next step: mount network disk %disk%: pause DIR %disk%: 1>NUL && net use %disk%: /delete net use %disk%: %%S /persistent:no REM net use %%S /USER:%domain%\%user% %password% /persistent:no @echo next step: copy all files from %disk%: to %destination% pause xcopy %disk%:\* %destination% /s /i /c @echo next step: dismount network disk %disk%: pause net use %disk%: /delete ) pause 

在脚本中,使用net命令安装SMB / CIFS共享。

 net use \\computername\sharename /persistent:no 

您可以使用xcopy将文件复制到SMB / CIFS共享中或从SMB / CIFS共享中复制文件。 完成复制后,可以select从Windows工作站删除共享。

 net use \\computername\sharename /delete 

您可以通过运行net help use来获得net命令的完整选项。