我想使用 JAVA 将本地 windows 机器中的文件复制到同一 LAN 或 Intranet 中的另一台 windows 机器。我浏览并发现我们可以使用copy
ms-dos 命令复制文件,但它只复制到远程机器的共享文件夹。
我不想复制到共享文件夹,而是想复制到 C: 驱动器内的一个文件夹,该文件夹不是共享文件夹。
我尝试使用pscp
命令。它适用于 windows 到 linux 文件复制,但不适用于 windows 到 windows 文件复制。
最好的方法是使用自写的套接字应用程序发送文件。
您不能复制非共享文件夹。但是你可以编写一个服务器客户端应用程序来通过网络发送数据:
据我所知,有几种方法可以实现它。
在机器 A 和机器 B 上提供两个代理,然后您可以通过自己的实现 API 将文件复制到每台机器。
像 chef 一样使用 winrm 协议,更多细节请参考下面的链接。
你也可以参考一些开源项目。
https://github.com/cloudsoft/winrm4j
https://github.com/OpenNMS/wsman
您无法复制到未共享的文件夹。
出于明显的安全原因,您要复制文件的计算机的操作系统永远不会允许您在任何地方写入。