你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Get-AzureStorageBlob

列出容器中的 Blob。

注意

本文档中引用的 cmdlet 用于管理使用服务管理 API 的旧 Azure 资源。 有关 cmdlet 的 Az PowerShell 模块,请参阅用于管理 Azure 资源管理器资源的模块。

语法

Get-AzureStorageBlob
   [[-Blob] <String>]
   [-Container] <String>
   [-MaxCount <Int32>]
   [-ContinuationToken <BlobContinuationToken>]
   [-Context <IStorageContext>]
   [-ServerTimeoutPerRequest <Int32>]
   [-ClientTimeoutPerRequest <Int32>]
   [-ConcurrentTaskCount <Int32>]
   [<CommonParameters>]
Get-AzureStorageBlob
   [-Prefix <String>]
   [-Container] <String>
   [-MaxCount <Int32>]
   [-ContinuationToken <BlobContinuationToken>]
   [-Context <IStorageContext>]
   [-ServerTimeoutPerRequest <Int32>]
   [-ClientTimeoutPerRequest <Int32>]
   [-ConcurrentTaskCount <Int32>]
   [<CommonParameters>]

说明

Get-AzureStorageBlob cmdlet 列出 Azure 存储帐户中指定容器中的 Blob。

示例

示例 1:按 Blob 名称获取 Blob

PS C:\>Get-AzureStorageBlob -Container "ContainerName" -Blob blob*

此命令使用 Blob 名称和通配符来获取 Blob。

示例 2:使用管道获取 Blob

PS C:\>Get-AzureStorageContainer -Name container* | Get-AzureStorageBlob

此命令使用管道获取 Blob。

示例 3:按名称前缀获取 Blob

PS C:\>Get-AzureStorageBlob -Container "ContainerName" -Prefix "blob"

此命令使用名称前缀来获取 Blob。

示例 4:列出多个批中的 Blob

PS C:\>$MaxReturn = 10000
PS C:\> $ContainerName = "abc"
PS C:\> $Total = 0
PS C:\> $Token = $Null
PS C:\> do
 {
     $Blobs = Get-AzureStorageBlob -Container $ContainerName -MaxCount $MaxReturn  -ContinuationToken $Token
     $Total += $Blobs.Count
     if($Blobs.Length -le 0) { Break;}
     $Token = $Blobs[$blobs.Count -1].ContinuationToken;
 }
 While ($Token -ne $Null)
PS C:\> Echo "Total $Total blobs in container $ContainerName"

此示例使用 MaxCountContinuationToken 参数列出多个批中的 Azure 存储 Blob。 前四个命令将值分配给在示例中使用的变量。

第五个命令指定使用 Get-AzureStorageBlob cmdlet 获取 Blob 的 Do-While 语句。 该语句包括存储在$Token变量中的延续标记。 $Token循环运行时更改值。 要了解详情,请键入 Get-Help About_Do

最后一个命令使用 Echo 命令显示总计。

参数

-Blob

指定可用于通配符搜索的名称或名称模式。 如果未指定 Blob 名称,则 cmdlet 会列出指定容器中的所有 Blob。 如果为此参数指定了值,则 cmdlet 会列出所有与此参数匹配的名称的 Blob。

Type:String
Position:0
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-ClientTimeoutPerRequest

指定一个服务请求的客户端超时间隔(以秒为单位)。 如果上一次调用在指定的时间间隔内失败,则此 cmdlet 会重试请求。 如果此 cmdlet 在间隔过后未收到成功的响应,则此 cmdlet 将返回错误。

Type:Int32
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-ConcurrentTaskCount

指定最大并发网络调用。 可以使用此参数通过指定并发网络调用的最大数目来限制本地 CPU 和带宽使用量的并发性。 指定的值为绝对计数,不乘以核心计数。 此参数可帮助减少低带宽环境中的网络连接问题,例如每秒 100 千比特。 默认值为 10。

Type:Int32
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-Container

指定容器的名称。

Type:String
Aliases:N, Name
Position:1
Default value:None
Accept pipeline input:True
Accept wildcard characters:False

-Context

指定要从中获取 Blob 列表的 Azure 存储帐户。 可以使用 New-AzureStorageContext cmdlet 创建存储上下文。

Type:IStorageContext
Position:Named
Default value:None
Accept pipeline input:True
Accept wildcard characters:False

-ContinuationToken

指定 Blob 列表的延续标记。 使用此参数和 MaxCount 参数可列出多个批中的 Blob。

Type:BlobContinuationToken
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-MaxCount

指定此 cmdlet 返回的最大对象数。

Type:Int32
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-Prefix

指定要获取的 Blob 名称的前缀。 此参数不支持使用正则表达式或通配符进行搜索。 这意味着,如果容器只有名为“My”、“MyBlob1”和“MyBlob2”的 Blob,并且指定“-Prefix My*”,则 cmdlet 不返回任何 blob。 但是,如果指定“-Prefix My”,cmdlet 将返回“My”、“MyBlob1”和“MyBlob2”。

Type:String
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-ServerTimeoutPerRequest

指定请求的服务端超时间隔(以秒为单位)。 如果服务处理请求之前指定的间隔已过,则存储服务将返回错误。

Type:Int32
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

输出

AzureStorageBlob

备注

  • 摘要