复制 BlobFromAzureStorage

Copy-BlobFromAzureStorage

我正在尝试从 Azure 存储中复制 Blob,因为我已经从名为 "Copy-BlobFromAzureStorage" 的 Azure Runbook 库中获取了一个 Runbook。当我尝试测试时,它提示我输入 "PATHTOPLACEBLOB" ,我在这里给出了默认位置 "c:/" 。及其 运行 fine.But 问题是我不明白在哪里可以找到存储的 blob,它被赋予“PSComputerName”作为 "localhost"。任何人都可以就此向我提出建议。

代码:

workflow Copy-BlobFromAzureStorage{

param

(
    [parameter(Mandatory=$True)] 
    [String] 
    $AzureSubscriptionName, 

    [parameter(Mandatory=$True)] 
    [PSCredential] 
    $AzureOrgIdCredential, 

    [parameter(Mandatory=$True)]
    [String]
    $StorageAccountName,

    [parameter(Mandatory=$True)]
    [String]
    $ContainerName,

    [parameter(Mandatory=$True)]
    [String]
    $BlobName,

    [parameter(Mandatory=$False)]
    [String]
    $PathToPlaceBlob = "C:\"
)

$Null = Add-AzureAccount -Credential $AzureOrgIdCredential 
$Null = Select-AzureSubscription -SubscriptionName $AzureSubscriptionName

Write-Verbose "Downloading $BlobName from Azure Blob Storage to $PathToPlaceBlob"

Set-AzureSubscription `
    -SubscriptionName $AzureSubscriptionName `
    -CurrentStorageAccount $StorageAccountName

$blob = 
    Get-AzureStorageBlobContent `
        -Blob $BlobName `
        -Container $ContainerName `
        -Destination $PathToPlaceBlob `
        -Force

try {
    Get-Item -Path "$PathToPlaceBlob$BlobName" -ErrorAction Stop
}
catch {
    Get-Item -Path $PathToPlaceBlob
}}

blob 放置在 Azure Automation runbook 所在的沙箱中 运行。将它放在那里没有多大意义,因为这个沙箱将在 Runbook 作业完成后被清理,但根据您的情况,它可能是有意义的,作为放置 blob 的中间点,例如编辑它或传输它到沙箱之外的其他地方(例如另一个 Azure 存储帐户或 FTP 服务器)。