![](/img/trans.png)
[英]Azure Powershell - How to upload file to Blob Storage using “write-only” shared access signature (SAS)?
[英]How to to list files, delete files, write files, in an Azure blob container using Powershell and Shared Access Signature
如何使用 Powershell 和共享訪問簽名在 Azure blob 容器中列出文件、刪除文件、寫入文件
我在 blob 下創建了一個容器,並創建了一個具有完全訪問權限的共享訪問簽名 (SAS)。 我想列出所有 *.csv 文件並首先刪除它們,然后遍歷我們所有的訂閱並使用下面的行生成使用信息
Get-AzConsumptionUsageDetail -StartDate 2019-01-01 -EndDate $EndOfYear -IncludeMeterDetails | 導出-CSV-路徑“$URI$Subscription.csv”
如何列出/刪除該容器中的所有 csv 文件,並讓 powershell 腳本將使用細節寫入該容器。
您還應該提供storage account name
。
然后第一步是使用New-AzStorageContext cmdlet 生成上下文。 示例如下:
$sas_token="?sv=2019-12-12&ss=bfqt&srt=sco&sp=rwdlacupx&se=2021-01-21T09:46:06Z&st=2021-01-21T01:46:06Z&spr=https&sig=xxxx"
$account_name = "your_storage_account_name"
#generate the context
$context = New-AzStorageContext -StorageAccountName $account_name -SasToken $sas_token
接下來,您可以使用Get-AzStorageBlob cmdlet 列出以 .csv 結尾的 blob。 示例如下:
#list blobs
$myblobs = Get-AzStorageBlob -Container "your_container_name" -Blob *.csv -Context $context
接下來,您可以使用Remove-AzStorageBlob cmdlet 刪除這些 csv blob:
#delete these blobs
$myblobs | Remove-AzStorageBlob -Context $context
最后一個,當您使用Get-AzConsumptionUsageDetail -StartDate 2019-01-01 -EndDate $EndOfYear -IncludeMeterDetails | Export-Csv -Path "$URI$Subscription.csv"
使用信息時 Get-AzConsumptionUsageDetail -StartDate 2019-01-01 -EndDate $EndOfYear -IncludeMeterDetails | Export-Csv -Path "$URI$Subscription.csv"
,此時你就知道文件Subscription.csv
的路徑了。 然后您可以使用Set-AzStorageBlobContent cmdlet 將 this.csv 文件上傳到 blob 存儲:
#upload blob
Set-AzStorageBlobContent -Container "the container name" -File "the file path, like c:\myfolder\dddd.csv" -Blob "specify the blob name, like usage.csv" -Context $context
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.