2016-11-09 98 views

回答

0

我想将新的blob上传到Azure存储帐户,但只有它不存在。

Set-AzureStorageBlobContent的文件,似乎可以用来跳过有不存在的参数/忽略现有的BLOB上载成团块的文件。作为一种解决方法,我们可以使用Get-AzureStorageBlob cmdlet在运行Set-AzureStorageBlobContent cmdlet将文件上传到blob之前检查blob是否已经存在。

try 
{ 
    $blob = Get-AzureStorageBlob -Blob $blobName -Container $containerName -Context $blobContext -ErrorAction Stop 

    Write-Host "Blob is existing" 
} 
catch 
{ 
    # The blob doesn't exist 
    # Add logic here 

    Write-Host "Blob Not Found" 

    Write-Host "Start Upload Blob" 

    Set-AzureStorageBlobContent -File $filename -Container $containerName -Blob $blobName -Context $blobContext 
} 
+0

感谢您的答复@FredHan。这就是我最终做的。此外,你可以更加具体地说明catch语句:'catch [Microsoft.WindowsAzure.Commands.Storage.Common.ResourceNotFoundException]' – Bartosz