다음을 통해 공유


Get-AzStorageBlob

컨테이너의 Blob을 나열합니다.

구문

Get-AzStorageBlob
   [[-Blob] <String>]
   [-Container] <String>
   [-IncludeDeleted]
   [-IncludeTag]
   [-MaxCount <Int32>]
   [-ContinuationToken <BlobContinuationToken>]
   [-TagCondition <String>]
   [-Context <IStorageContext>]
   [-ServerTimeoutPerRequest <Int32>]
   [-ClientTimeoutPerRequest <Int32>]
   [-DefaultProfile <IAzureContextContainer>]
   [-ConcurrentTaskCount <Int32>]
   [<CommonParameters>]
Get-AzStorageBlob
   [-Blob] <String>
   [-Container] <String>
   [-IncludeDeleted]
   [-IncludeTag]
   -SnapshotTime <DateTimeOffset>
   [-MaxCount <Int32>]
   [-ContinuationToken <BlobContinuationToken>]
   [-TagCondition <String>]
   [-Context <IStorageContext>]
   [-ServerTimeoutPerRequest <Int32>]
   [-ClientTimeoutPerRequest <Int32>]
   [-DefaultProfile <IAzureContextContainer>]
   [-ConcurrentTaskCount <Int32>]
   [<CommonParameters>]
Get-AzStorageBlob
   [-Blob] <String>
   [-Container] <String>
   [-IncludeDeleted]
   [-IncludeTag]
   -VersionId <String>
   [-MaxCount <Int32>]
   [-ContinuationToken <BlobContinuationToken>]
   [-TagCondition <String>]
   [-Context <IStorageContext>]
   [-ServerTimeoutPerRequest <Int32>]
   [-ClientTimeoutPerRequest <Int32>]
   [-DefaultProfile <IAzureContextContainer>]
   [-ConcurrentTaskCount <Int32>]
   [<CommonParameters>]
Get-AzStorageBlob
   [-Prefix <String>]
   [-Container] <String>
   [-IncludeDeleted]
   [-IncludeVersion]
   [-IncludeTag]
   [-MaxCount <Int32>]
   [-ContinuationToken <BlobContinuationToken>]
   [-Context <IStorageContext>]
   [-ServerTimeoutPerRequest <Int32>]
   [-ClientTimeoutPerRequest <Int32>]
   [-DefaultProfile <IAzureContextContainer>]
   [-ConcurrentTaskCount <Int32>]
   [<CommonParameters>]

Description

Get-AzStorageBlob cmdlet은 Azure Storage 계정의 지정된 컨테이너에 Blob을 나열합니다.

예제

예제 1: Blob 이름으로 Blob 가져오기

Get-AzStorageBlob -Container "ContainerName" -Blob blob*

이 명령은 Blob 이름과 와일드카드를 사용하여 Blob을 가져옵니다.

예제 2: 파이프라인을 사용하여 컨테이너에서 Blob 가져오기

Get-AzStorageContainer -Name container* | Get-AzStorageBlob -IncludeDeleted

Container Uri: https://storageaccountname.blob.core.windows.net/container1

Name                 BlobType  Length          ContentType                    LastModified         AccessTier SnapshotTime         IsDeleted 
----                 --------  ------          -----------                    ------------         ---------- ------------         --------- 
test1                BlockBlob 403116          application/octet-stream       2017-11-08 07:53:19Z            2017-11-08 08:19:32Z True      
test1                BlockBlob 403116          application/octet-stream       2017-11-08 09:00:29Z                                 True      
test2                BlockBlob 403116          application/octet-stream       2017-11-08 07:53:00Z                                 False

이 명령은 파이프라인을 사용하여 컨테이너의 모든 Blob(삭제된 상태의 Blob 포함)을 가져옵니다.

예제 3: 이름 접두사로 Blob 가져오기

Get-AzStorageBlob -Container "ContainerName" -Prefix "blob"

이 명령은 이름 접두사를 사용하여 Blob을 가져옵니다.

예제 4: 여러 일괄 처리에 Blob 나열

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

이 예제에서는 MaxCountContinuationToken 매개 변수를 사용하여 Azure Storage Blob을 여러 일괄 처리로 나열합니다. 처음 네 명령은 예제에서 사용할 변수에 값을 할당합니다. 다섯 번째 명령은 Get-AzStorageBlob cmdlet을 사용하여 Blob을 가져오는 Do-While 문을 지정합니다. 이 문에는 $Token 변수에 저장된 연속 토큰이 포함됩니다. $Token 루프가 실행될 때 값을 변경합니다. 자세한 내용은 다음을 입력합니다 Get-Help About_Do. 마지막 명령은 Echo 명령을 사용하여 합계를 표시합니다.

예제 5: 컨테이너의 모든 Blob 가져오기 Blob 버전 포함

Get-AzStorageBlob -Container "containername"  -IncludeVersion

AccountName: storageaccountname, ContainerName: containername

Name                 BlobType  Length          ContentType                    LastModified         AccessTier SnapshotTime                 IsDeleted  VersionId                     
----                 --------  ------          -----------                    ------------         ---------- ------------                 ---------  ---------                     
blob1                BlockBlob 2097152         application/octet-stream       2020-07-06 06:56:06Z Hot                                     False      2020-07-06T06:56:06.2432658Z  
blob1                BlockBlob 2097152         application/octet-stream       2020-07-06 06:56:06Z Hot        2020-07-06T06:56:06.8588431Z False                                    
blob1                BlockBlob 2097152         application/octet-stream       2020-07-06 06:56:06Z Hot                                     False      2020-07-06T06:56:06.8598431Z *  
blob2                BlockBlob 2097152         application/octet-stream       2020-07-03 16:19:16Z Hot                                     False      2020-07-03T16:19:16.2883167Z  
blob2                BlockBlob 2097152         application/octet-stream       2020-07-03 16:19:35Z Hot                                     False      2020-07-03T16:19:35.2381110Z *

이 명령은 컨테이너 포함 Blob 버전의 모든 Blob을 가져옵니다.

예제 6: 단일 Blob 버전 가져오기

Get-AzStorageBlob -Container "containername" -Blob blob2 -VersionId "2020-07-03T16:19:16.2883167Z"

AccountName: storageaccountname, ContainerName: containername

Name                 BlobType  Length          ContentType                    LastModified         AccessTier SnapshotTime                 IsDeleted  VersionId                     
----                 --------  ------          -----------                    ------------         ---------- ------------                 ---------  ---------                     
blob2                BlockBlob 2097152         application/octet-stream       2020-07-03 16:19:16Z Hot                                     False      2020-07-03T16:19:16.2883167Z

이 명령은 VersionId를 사용하여 단일 Blob 꼭짓점을 가져옵니다.

예제 7: 단일 Blob 스냅샷 가져오기

Get-AzStorageBlob -Container "containername" -Blob blob1 -SnapshotTime "2020-07-06T06:56:06.8588431Z"

AccountName: storageaccountname, ContainerName: containername

Name                 BlobType  Length          ContentType                    LastModified         AccessTier SnapshotTime                 IsDeleted  VersionId                     
----                 --------  ------          -----------                    ------------         ---------- ------------                 ---------  ---------                     
blob1                BlockBlob 2097152         application/octet-stream       2020-07-06 06:56:06Z Hot        2020-07-06T06:56:06.8588431Z False

이 명령은 SnapshotTime을 사용하여 단일 Blob 스냅샷을 가져옵니다.

예제 8: Blob 포함 Blob 태그 가져오기

$blobs = Get-AzStorageBlob -Container "containername" -IncludeTag

$blobs

   AccountName: storageaccountname, ContainerName: containername

Name                 BlobType  Length          ContentType                    LastModified         AccessTier SnapshotTime                 IsDeleted  VersionId                     
----                 --------  ------          -----------                    ------------         ---------- ------------                 ---------  ---------                     
testblob             BlockBlob 2097152         application/octet-stream       2020-07-23 09:35:02Z Hot                                     False      2020-07-23T09:35:02.8527357Z *
testblob2            BlockBlob 2097152         application/octet-stream       2020-07-23 09:35:04Z Hot                                     False      2020-07-23T09:35:04.0856187Z *


$blobs[0].Tags
Name          Value 
----          -----
tag1          value1
tag2          value2

이 명령은 Blob 태그가 있는 컨테이너의 Blob을 나열하고 첫 번째 Blob의 태그를 표시합니다.

예제 9: Blob 태그 조건이 있는 단일 Blob 가져오기

Get-AzStorageBlob -Container "containername" -Blob testblob -TagCondition """tag1""='value1'"

AccountName: storageaccountname, ContainerName: containername

Name                 BlobType  Length          ContentType                    LastModified         AccessTier SnapshotTime                 IsDeleted  VersionId                     
----                 --------  ------          -----------                    ------------         ---------- ------------                 ---------  ---------                     
testblob             BlockBlob 2097152         application/octet-stream       2020-07-23 09:35:02Z Hot                                     False      2020-07-23T09:35:02.8527357Z *

이 명령은 Blob 태그 조건이 있는 단일 Blob을 가져옵니다. 이 cmdlet은 Blob에 이름이 "tag1"이고 값이 "value1"인 태그가 포함된 경우에만 성공합니다. 그렇지 않으면 cmdlet이 오류 코드 412와 함께 실패합니다.

매개 변수

-Blob

와일드카드 검색에 사용할 수 있는 이름 또는 이름 패턴을 지정합니다. Blob 이름을 지정하지 않으면 cmdlet은 지정된 컨테이너의 모든 Blob을 나열합니다. 이 매개 변수에 값을 지정하면 cmdlet은 이 매개 변수와 일치하는 이름을 가진 모든 Blob을 나열합니다. 이 매개 변수는 문자열의 모든 위치에서 와일드카드를 지원합니다.

형식:String
Position:0
Default value:None
필수:True
파이프라인 입력 허용:False
와일드카드 문자 허용:True

-ClientTimeoutPerRequest

하나의 서비스 요청에 대한 클라이언트 쪽 제한 시간 간격(초)을 지정합니다. 이전 호출이 지정된 간격으로 실패하면 이 cmdlet은 요청을 다시 시도합니다. 이 cmdlet이 간격이 경과하기 전에 성공적인 응답을 받지 못하면 이 cmdlet은 오류를 반환합니다.

형식:Nullable<T>[Int32]
별칭:ClientTimeoutPerRequestInSeconds
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-ConcurrentTaskCount

최대 동시 네트워크 호출을 지정합니다. 이 매개 변수를 사용하여 동시 네트워크 호출의 최대 수를 지정하여 로컬 CPU 및 대역폭 사용을 제한하는 동시성을 제한할 수 있습니다. 지정된 값은 절대 개수이며 코어 수를 곱하지 않습니다. 이 매개 변수는 초당 100킬로비트와 같은 낮은 대역폭 환경에서 네트워크 연결 문제를 줄이는 데 도움이 될 수 있습니다. 기본값은 10입니다.

형식:Nullable<T>[Int32]
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Container

컨테이너의 이름을 지정합니다.

형식:String
별칭:N, Name
Position:1
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-Context

Blob 목록을 가져올 Azure Storage 계정을 지정합니다. New-AzStorageContext cmdlet을 사용하여 스토리지 컨텍스트를 만들 수 있습니다.

형식:IStorageContext
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-ContinuationToken

Blob 목록에 대한 연속 토큰을 지정합니다. 이 매개 변수와 MaxCount 매개 변수를 사용하여 Blob을 여러 일괄 처리로 나열합니다.

형식:BlobContinuationToken
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-DefaultProfile

Azure와의 통신에 사용되는 자격 증명, 계정, 테넌트 및 구독입니다.

형식:IAzureContextContainer
별칭:AzureRmContext, AzureCredential
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-IncludeDeleted

삭제된 Blob을 포함합니다. 기본적으로 Blob 가져오기에는 삭제된 Blob이 포함되지 않습니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-IncludeTag

Blob 태그를 포함하면 기본적으로 Blob 가져오기에는 Blob 태그가 포함되지 않습니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-IncludeVersion

Blob 버전은 이 매개 변수가 있는 경우에만 나열되며, 기본적으로 Blob 가져오기 버전에는 Blob 버전이 포함되지 않습니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-MaxCount

이 cmdlet이 반환하는 최대 개체 수를 지정합니다.

형식:Nullable<T>[Int32]
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Prefix

가져올 Blob 이름의 접두사를 지정합니다. 이 매개 변수는 정규식 또는 와일드카드 문자를 사용하여 검색할 수 없습니다. 즉, 컨테이너에 "My", "MyBlob1" 및 "MyBlob2"라는 Blob만 있고 "-Prefix My*"를 지정하면 cmdlet은 Blob을 반환하지 않습니다. 그러나 "-Prefix My"를 지정하면 cmdlet은 "My", "MyBlob1" 및 "MyBlob2"를 반환합니다.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-ServerTimeoutPerRequest

요청에 대한 서비스 쪽 제한 시간 간격(초)을 지정합니다. 서비스에서 요청을 처리하기 전에 지정된 간격이 경과하면 스토리지 서비스가 오류를 반환합니다.

형식:Nullable<T>[Int32]
별칭:ServerTimeoutPerRequestInSeconds
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-SnapshotTime

Blob SnapshotTime

형식:Nullable<T>[DateTimeOffset]
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-TagCondition

일치 조건을 확인하는 선택적 태그 식 문입니다. Blob 태그가 지정된 식과 일치하지 않으면 Blob 요청이 실패합니다. 자세한 내용은 https://learn.microsoft.com/en-us/rest/api/storageservices/specifying-conditional-headers-for-blob-service-operations#tags-conditional-operations 를 참조하세요.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-VersionId

Blob VersionId

형식:String
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:False
와일드카드 문자 허용:False

입력

String

IStorageContext

출력

AzureStorageBlob