【发布时间】:2014-06-14 17:20:32
【问题描述】:
我目前正在编写一个脚本,该脚本需要使用不同的凭据从另一台机器复制文件
我按照这里的步骤操作
Using PowerShell credentials without being prompted for a password
它对我不起作用,当我运行 Start-BitsTransfer 时,命令提示符仍然抱怨我需要复制的文件不存在
我注意到,如果我尝试浏览要从中复制的目录并在出现提示时输入凭据,我就能够从那时起复制文件,因为凭据以某种方式被缓存
我还注意到我上面提到的提示与我使用“Get-Credential”命令得到的提示有点不同
不确定这是否意味着什么。无论如何,为什么我找到的解决方案不适合我?有什么想法吗?
附言
Start-BitsTransfer -Source \\RemoteFS\RemoteFile -Destination . -Credential $fsCred
Start-BitsTransfer : Cannot find path '\\RemoteFS\RemoteFile' because it does not exist.
At line:1 char:1
+ Start-BitsTransfer -Source \\RemoteFS\RemoteFile -Destinatio ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (\\RemoteFS\RemoteFile:String) [Start-BitsTransfer], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : PathNotFound,Microsoft.BackgroundIntelligentTransfer.Management.NewBitsTransferCommand
请再次注意,在我尝试在文件资源管理器中访问 \RemoteFS\RemoteFile 并提示输入凭据后,我能够正常运行该命令,因为我认为凭据已被缓存
【问题讨论】:
-
您介意显示命令和错误消息吗?
-
刚刚编辑了内容,谢谢
-
UNC 路径应以两个反斜杠开头
\\RemoteFS\RemoteFile -
UNC 路径是网络路径。如果您的远程会话与文件夹在同一台机器上执行,它应该使用本地路径,而不是网络路径。该文件夹是否与远程会话位于同一台计算机上?如果文件夹不是在同一台机器上,访问网络文件夹是否需要与远程会话不同的凭据? @Cole9350 看起来 Markdown 吃了一些斜线;一旦我将所有内容都放在代码块中,就会出现双斜杠。
-
@jpmc26 在 powershell 中,unc 路径与本地路径一样有效。我认为这只是一个复制错误,但路径仍然没有意义。您无法在 Windows 上共享单个文件,除非它位于某种共享文件夹中,因此它必须更像
\\RemoteServer\RemoteFS\RemoteFile.file
标签: powershell remote-access credentials