我可以从脚本或命令行将文件复制到网上邻居吗? [关闭]
Posted
技术标签:
【中文标题】我可以从脚本或命令行将文件复制到网上邻居吗? [关闭]【英文标题】:Can I copy files to a Network Place from a script or the command line? [closed] 【发布时间】:2010-09-05 20:03:24 【问题描述】:在 Windows XP 中,是否可以通过命令行、批处理文件或更好的 PowerShell 脚本将文件复制到网上邻居?
让我走上这条研究道路的原因是试图从用户的机器上将文件发布到 WSS 3.0 文档库。我无法将驱动器映射到有问题的库,因为 WSS 站点只能通过 NTLM 在 80 或 443 以外的端口上进行身份验证。我想我可以交替使用 WSS Web 服务将文件推出,但我真的很好奇这个问题的答案。
【问题讨论】:
在这里也可以看到类似的问题:serverfault.com/q/43116/84502 【参考方案1】:使用批处理文件,既可以登录资源,也可以复制文件:
批处理文件将包含以下内容:
net use \\dest-machine\destfolder password /user:username
copy file \\dest-machine\destfolder
例如
net use \\Development\myfolder mypassword /user:Administrator
copy newfile.c \\development\myfolder
【讨论】:
【参考方案2】:如果您指的是windows box
,只需使用xcopy
。 xcopy
可用是相当标准的。
xcopy src \\dest-machine\shared-library-name\dest
xcopy \\src-machine\shared-library-name\dest src
【讨论】:
【参考方案3】:Powershell 使用 Provider 的抽象来为数据存储提供一个通用接口。这些似乎与常用名词“Item”保持一致,因此您可以使用man *item*
获得完整列表。如果您知道另一种方法来复制和以其他方式处理存储中的数据,您不妨使用它,但使用 cmdlet 提供了一种更好的“一次学习,经常使用”的方法。在您的情况下,您可以:
Copy-Item test.txt -Destination \\dest-machine\share
如果需要,复制项也支持 -Credential 参数。
【讨论】:
Copy-Item 有一个 -Credential 参数,但是没有一个标准提供者(即文件系统)支持它,所以它不是真的可用。【参考方案4】:“网上邻居”并没有真正的 API,它只是一堆快捷方式,如果我没记错的话,SharePoint 共享使用 Shell 扩展。
总而言之:从 PowerShell 访问 Sharepoint 作为文件系统也需要扩展名,SharePoint Provider。
【讨论】:
【参考方案5】:您可以使用“net”命令进行身份验证,然后复制文件。
copy src \\dest-machine\shared-library-name\dest
我真的不确定如果需要,如何处理身份验证。
【讨论】:
【参考方案6】:从我所见,似乎无法从命令行直接访问/操作网上邻居,无论是在 PowerShell 中还是在普通的 ol' 命令提示符中。
@slipsec (#13899):
感谢您的建议,但 PowerShell 不支持目标路径中的端口号,而不是 net use
命令。
因此,在我的特定情况下,我能做的最好的事情就是咬紧牙关,购买 WebDrive 之类的东西,以便在非标准端口上通过 WebDAV 启用驱动器映射,或者进行一些不同的配置(例如,使用不同的 Web 应用程序) IP 地址和主机标头)在 SharePoint 中通过标准端口上的 NTLM 公开网站。
【讨论】:
【参考方案7】:我可能错了,但我认为 Nick 的 robocopy 解决方案或 Nathan 的复制命令解决方案都行不通。 Robocopy 似乎想要一个映射驱动器,我不能这样做,因为它没有在端口 80 或 443 上运行,而且 Windows 无法处理包含 UNC 样式名称中的端口的路径:
copy src \\dest-machine:45000\shared-library-name\dest
我也没有看到可以处理这种情况的 NAnt 任务。
我还知道有一些工具可以让我映射 WebDAV 驱动器。我更想知道是否有某种方法可以在不使用 GUI 的情况下使用已设置的网上邻居。
【讨论】:
【参考方案8】:如果你需要编写脚本,你应该考虑NAnt。
它主要用于构建脚本,但它非常强大且相当容易上手。
还有NAntContrib 和nant ftp task 应该可以帮助您。
【讨论】:
【参考方案9】:是的,你可以。我建议使用像 robocopy 这样的工具。
【讨论】:
以上是关于我可以从脚本或命令行将文件复制到网上邻居吗? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 VLC 或 FFMPEG 命令行将外部音轨添加到视频文件