我正在尝试使用 Cloudberry Explorer PowerShell 脚本自动将文件从 Amazon S3 存储拉到本地磁盘。使用桌面应用程序,我可以手动连接并将文件顺利带到本地文件夹。使用 PowerShell 时,我收到一条错误消息The Remote name could not be resolved 'http'
。下面是我的代码,我相信它是正确的。我尝试过使用和不使用代理信息,但都得到了同样的错误。我还让我的网络管理员绕过了网站的代理身份验证。我不确定还有什么可能导致此错误。
Add-PSSnapin CloudBerryLab.Explorer.PSSnapIn
#Set Proxy info
Set-CloudOption -ProxyAddress [proxy info here] -ProxyPort 8080
#Set connection to Amazon S3 account with access key and secret key
$s3 = Get-CloudS3Connection -Key ***** -Secret ***** -SignatureVersion 2 -UseSSL
#Set source and Destination folders
$source = $s3 | Select-CloudFolder -Path "my folder/subfolder"
$local = Get-CloudFileSystemConnection
$target = $local | Select-CloudFolder "C:\localdrive"
#Run sync folders source to target:
$source | Copy-CloudSyncFolders $target -DeleteOnTarget -MissingOnly
答案1
我认为,最好使用本机 S3 API 来自动执行相对简单的任务。我发现 Cloudberry 的 API 对于这种情况不太可靠。请查看此处了解更多信息:http://docs.aws.amazon.com/cli/latest/reference/s3api/get-object.html
答案2
仅使用-UseSSL就足够了。
-SignatureVersion 2 仅适用于与 S3 兼容的提供商。
这应该有效:
$s3 = Get-CloudS3Connection-UseSSL-Key *****-Secret *****
另外,确保您可以将“CloudBerry Explorer.exe”添加到网络排除列表中,以避免可能的网络错误。
最后要注意的是 - 目前 Powershell 已得到支持。