【问题标题】:Powershell automation copy files using alternative credential使用备用凭据的 Powershell 自动化复制文件
【发布时间】: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


【解决方案1】:

为什么不是最优雅的方式,我会简单地使用“Net Use”和“Net Use /Delete”。这绝对有效,我正在使用它来访问不属于我的域的计算机(在 sysprep 期间)。

Start-BitsTransfer 支持自定义凭据,但是我们在测试它时遇到了几个不同的问题(我不记得细节了,但是好的旧网络使用工作完美地满足了我们的需求)。

马丁

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-01-10
    • 2010-10-19
    • 1970-01-01
    • 1970-01-01
    • 2021-11-27
    • 1970-01-01
    • 1970-01-01
    • 2021-05-25
    相关资源
    最近更新 更多