使用 powershell 显示 Azure 中多个存储容器中的所有 blob
Showing all the blobs from multiple storage containers in Azure using powershell
我正在尝试使用 powershell 列出我在 Azure 存储帐户中拥有的各种容器中的所有 blob
所以我 运行 下面的命令:
$storageAccountName = "contoso"
$resourceGroup = "Contoso-Rg"
$storageAccountKey = (Get-AzStorageAccountKey -ResourceGroupName $resourceGroup -Name $storageAccountName).Value[0]
$context=New-AzStorageContext -StorageAccountName $storageAccountName -StorageAccountKey $storageAccountkey
$containerName = Get-AzStorageContainer -Context $context
$storageAccount = Get-AzStorageAccount -ResourceGroupName $resourceGroup -Name $storageAccountName
$ctx = $storageAccount.Context
$containerName | ForEach-Object { Get-AzStorageBlob -Container $_ -Context $ctx }
当我 运行 最后一个命令时,它向我抛出错误,如屏幕截图所示。知道我做错了什么以及如何解决这个问题
无需将 $_
传递给“-contianer”标志,您需要将 $_.Name
传递给 foreach-object 中的容器参数。
发布对共享脚本进行上述更改后,我们能够将所有 bolb 拉入容器。
修改后的脚本如下:
$storageAccountName = "<strgAccountName>"
$resourceGroup = "<rgName>"
$storageAccountKey = (Get-AzStorageAccountKey -ResourceGroupName $resourceGroup -Name $storageAccountName).Value[0]
$context=New-AzStorageContext -StorageAccountName $storageAccountName -StorageAccountKey $storageAccountkey
$containerName = Get-AzStorageContainer -Context $context
$storageAccount = Get-AzStorageAccount -ResourceGroupName $resourceGroup -Name $storageAccountName
$containerName | ForEach-Object { Get-AzStorageBlob -Container $_.Name -Context $context }
这里是示例输出以供参考:
我正在尝试使用 powershell 列出我在 Azure 存储帐户中拥有的各种容器中的所有 blob 所以我 运行 下面的命令:
$storageAccountName = "contoso"
$resourceGroup = "Contoso-Rg"
$storageAccountKey = (Get-AzStorageAccountKey -ResourceGroupName $resourceGroup -Name $storageAccountName).Value[0]
$context=New-AzStorageContext -StorageAccountName $storageAccountName -StorageAccountKey $storageAccountkey
$containerName = Get-AzStorageContainer -Context $context
$storageAccount = Get-AzStorageAccount -ResourceGroupName $resourceGroup -Name $storageAccountName
$ctx = $storageAccount.Context
$containerName | ForEach-Object { Get-AzStorageBlob -Container $_ -Context $ctx }
当我 运行 最后一个命令时,它向我抛出错误,如屏幕截图所示。知道我做错了什么以及如何解决这个问题
无需将 $_
传递给“-contianer”标志,您需要将 $_.Name
传递给 foreach-object 中的容器参数。
发布对共享脚本进行上述更改后,我们能够将所有 bolb 拉入容器。
修改后的脚本如下:
$storageAccountName = "<strgAccountName>"
$resourceGroup = "<rgName>"
$storageAccountKey = (Get-AzStorageAccountKey -ResourceGroupName $resourceGroup -Name $storageAccountName).Value[0]
$context=New-AzStorageContext -StorageAccountName $storageAccountName -StorageAccountKey $storageAccountkey
$containerName = Get-AzStorageContainer -Context $context
$storageAccount = Get-AzStorageAccount -ResourceGroupName $resourceGroup -Name $storageAccountName
$containerName | ForEach-Object { Get-AzStorageBlob -Container $_.Name -Context $context }
这里是示例输出以供参考: