

文档 AWS SDK 示例 GitHub 存储库中还有更多 [S AWS DK 示例](https://github.com/awsdocs/aws-doc-sdk-examples)。

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# `GetBucketLocation`与 AWS SDK 或 CLI 配合使用
<a name="s3_example_s3_GetBucketLocation_section"></a>

以下代码示例演示如何使用 `GetBucketLocation`。

------
#### [ CLI ]

**AWS CLI**  
如果存在约束条件，则以下命令会检索名为 `amzn-s3-demo-bucket` 的存储桶的位置约束：  

```
aws s3api get-bucket-location --bucket amzn-s3-demo-bucket
```
输出：  

```
{
    "LocationConstraint": "us-west-2"
}
```
+  有关 API 的详细信息，请参阅*AWS CLI 命令参考[GetBucketLocation](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3api/get-bucket-location.html)*中的。

------
#### [ PowerShell ]

**适用于 PowerShell V4 的工具**  
**示例 1：如果存在约束，则此命令返回存储桶“amzn-s3-demo-bucket”的位置约束。**  

```
Get-S3BucketLocation -BucketName 'amzn-s3-demo-bucket'
```
**输出**：  

```
Value
-----
ap-south-1
```
+  有关 API 的详细信息，请参阅 *AWS Tools for PowerShell Cmdlet 参考 (V* 4) [GetBucketLocation](https://docs.aws.amazon.com/powershell/v4/reference)中的。

**适用于 PowerShell V5 的工具**  
**示例 1：如果存在约束，则此命令返回存储桶“amzn-s3-demo-bucket”的位置约束。**  

```
Get-S3BucketLocation -BucketName 'amzn-s3-demo-bucket'
```
**输出**：  

```
Value
-----
ap-south-1
```
+  有关 API 的详细信息，请参阅 *AWS Tools for PowerShell Cmdlet 参考 (V* 5) [GetBucketLocation](https://docs.aws.amazon.com/powershell/v5/reference)中的。

------
#### [ Rust ]

**适用于 Rust 的 SDK**  
 还有更多相关信息 GitHub。在 [AWS 代码示例存储库](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/rustv1/examples/s3#code-examples)中查找完整示例，了解如何进行设置和运行。

```
async fn show_buckets(
    strict: bool,
    client: &Client,
    region: BucketLocationConstraint,
) -> Result<(), S3ExampleError> {
    let mut buckets = client.list_buckets().into_paginator().send();

    let mut num_buckets = 0;
    let mut in_region = 0;

    while let Some(Ok(output)) = buckets.next().await {
        for bucket in output.buckets() {
            num_buckets += 1;
            if strict {
                let r = client
                    .get_bucket_location()
                    .bucket(bucket.name().unwrap_or_default())
                    .send()
                    .await?;

                if r.location_constraint() == Some(&region) {
                    println!("{}", bucket.name().unwrap_or_default());
                    in_region += 1;
                }
            } else {
                println!("{}", bucket.name().unwrap_or_default());
            }
        }
    }

    println!();
    if strict {
        println!(
            "Found {} buckets in the {} region out of a total of {} buckets.",
            in_region, region, num_buckets
        );
    } else {
        println!("Found {} buckets in all regions.", num_buckets);
    }

    Ok(())
}
```
+  有关 API 的详细信息，请参阅适用[GetBucketLocation](https://docs.rs/aws-sdk-s3/latest/aws_sdk_s3/client/struct.Client.html#method.get_bucket_location)于 *Rust 的AWS SDK API 参考*。

------