首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >需要有关Powershell从网络驱动器复制项目的帮助

需要有关Powershell从网络驱动器复制项目的帮助
EN

Stack Overflow用户
提问于 2013-02-02 03:45:24
回答 3查看 43.8K关注 0票数 20

我正在尝试使用以下命令从远程计算机到另一台远程计算机使用Copy-Item

代码语言:javascript
复制
Copy-Item -Path "\\machine1\abc\123\log 1.zip" -Destination "\\machine2\\c$\Logs\"

我不断地收到错误"Cannot find Path "\\machine1\abc\123\log 1.zip

我可以访问该路径并从那里手动复制。

我以管理员身份打开PowerCLI并运行此脚本...我完全被困在这里,不确定如何解决它。

EN

回答 3

Stack Overflow用户

发布于 2013-02-02 04:26:04

这似乎和在PowerShell v3上一样有效。我没有v2可以用来测试,但我知道有两个选项,它们应该可以工作。首先,您可以映射PSDrives:

代码语言:javascript
复制
New-PSDrive -Name source -PSProvider FileSystem -Root \\machine1\abc\123 | Out-Null
New-PSDrive -Name target -PSProvider FileSystem -Root \\machine2\c$\Logs | Out-Null
Copy-Item -Path source:\log_1.zip -Destination target:
Remove-PSDrive source
Remove-PSDrive target

如果这是您要做的很多事情,您甚至可以将其包装在一个函数中:

代码语言:javascript
复制
Function Copy-ItemUNC($SourcePath, $TargetPath, $FileName)
{
   New-PSDrive -Name source -PSProvider FileSystem -Root $SourcePath | Out-Null
   New-PSDrive -Name target -PSProvider FileSystem -Root $TargetPath | Out-Null
   Copy-Item -Path source:\$FileName -Destination target:
   Remove-PSDrive source
   Remove-PSDrive target
}

或者,您可以显式指定每个路径的提供程序:

代码语言:javascript
复制
Copy-Item -Path "Microsoft.PowerShell.Core\FileSystem::\\machine1\abc\123\log 1.zip" -Destination "Microsoft.PowerShell.Core\FileSystem::\\machine2\\c$\Logs\"
票数 26
EN

Stack Overflow用户

发布于 2016-11-04 04:11:05

这对我来说是一天的工作:

代码语言:javascript
复制
$strLFpath = "\\compname\e$\folder"
$strLFpath2 = "\\Remotecomputer\networkshare\remotefolder"  #this is a second option that also will work
$StrRLPath = "E:\localfolder"  
Copy-Item -Path "$StrRLPath\*" -Destination "$strLFpath" -Recurse -force -Verbose

注意事项: Copy-item将最后一项定义为对象。要复制文件夹的内容,您需要\*

如果要将文件夹本身复制到新位置,则不需要声明内容。

票数 3
EN

Stack Overflow用户

发布于 2021-10-16 03:38:51

我每天都会用到这个:

代码语言:javascript
复制
Robocopy /E \\\SOURCEIP\C$\123\  \\\DESTIP\C$\Logs\   

中间有一块空白处。对于ROBCOPY,/E执行复制。如果你需要做一个动作,你可以用谷歌搜索。

或者:

代码语言:javascript
复制
$SourceIP = Read-Host "Enter the Source IP"

$DESTIP = Read-Host "Enter the Destination IP"

Robocopy /E \\\\$SourceIP\C$\123\  \\\\$DESTIP\C$\Logs\ 

####Just adjust the C$ path on both#####
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14653851

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档