

文件 AWS 開發套件範例 GitHub 儲存庫中有更多可用的 [AWS SDK 範例](https://github.com/awsdocs/aws-doc-sdk-examples)。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用 Tools for PowerShell V5 的 Resource Groups 範例
<a name="powershell_5_resource-groups_code_examples"></a>

下列程式碼範例示範如何使用 AWS Tools for PowerShell V5 搭配資源群組來執行動作和實作常見案例。

*Actions* 是大型程式的程式碼摘錄，必須在內容中執行。雖然動作會告訴您如何呼叫個別服務函數，但您可以在其相關情境中查看內容中的動作。

每個範例均包含完整原始碼的連結，您可在連結中找到如何設定和執行內容中程式碼的相關指示。

**Topics**
+ [動作](#actions)

## 動作
<a name="actions"></a>

### `Add-RGResourceTag`
<a name="resource-groups_Tag_powershell_5_topic"></a>

以下程式碼範例顯示如何使用 `Add-RGResourceTag`。

**Tools for PowerShell V5**  
**範例 1：此範例會將值為 'workboxes' 的標籤索引鍵 'Instances'，新增至給定的資源群組 arn**  

```
Add-RGResourceTag -Tag @{Instances="workboxes"} -Arn arn:aws:resource-groups:eu-west-1:123456789012:group/workboxes
```
**輸出：**  

```
Arn                                                            Tags
---                                                            ----
arn:aws:resource-groups:eu-west-1:123456789012:group/workboxes {[Instances, workboxes]}
```
+  如需 API 詳細資訊，請參閱《AWS Tools for PowerShell Cmdlet 參考 (V5)》**中的 [Tag](https://docs.aws.amazon.com/powershell/v5/reference)。

### `Find-RGResource`
<a name="resource-groups_SearchResources_powershell_5_topic"></a>

以下程式碼範例顯示如何使用 `Find-RGResource`。

**Tools for PowerShell V5**  
**範例 1：此範例使用標籤篩選條件，為執行個體資源類型建立 ResourceQuery，並尋找資源。**  

```
$query = [Amazon.ResourceGroups.Model.ResourceQuery]::new()
$query.Type = [Amazon.ResourceGroups.QueryType]::TAG_FILTERS_1_0
$query.Query = ConvertTo-Json -Compress -Depth 4 -InputObject @{
  ResourceTypeFilters = @('AWS::EC2::Instance')
  TagFilters = @(@{
    Key = 'auto'
    Values = @('no')
  })
 }

Find-RGResource -ResourceQuery $query | Select-Object -ExpandProperty ResourceIdentifiers
```
**輸出：**  

```
ResourceArn                                                     ResourceType
-----------                                                     ------------
arn:aws:ec2:eu-west-1:123456789012:instance/i-0123445b6cb7bd67b AWS::EC2::Instance
```
+  如需 API 詳細資訊，請參閱《AWS Tools for PowerShell Cmdlet 參考 (V5)》**中的 [SearchResources](https://docs.aws.amazon.com/powershell/v5/reference)。

### `Get-RGGroup`
<a name="resource-groups_GetGroup_powershell_5_topic"></a>

以下程式碼範例顯示如何使用 `Get-RGGroup`。

**Tools for PowerShell V5**  
**範例 1：此範例會根據群組名稱擷取資源群組**  

```
Get-RGGroup -GroupName auto-no
```
**輸出：**  

```
Description GroupArn                                                     Name
----------- --------                                                     ----
            arn:aws:resource-groups:eu-west-1:123456789012:group/auto-no auto-no
```
+  如需 API 詳細資訊，請參閱《AWS Tools for PowerShell Cmdlet 參考 (V5)》**中的 [GetGroup](https://docs.aws.amazon.com/powershell/v5/reference)。

### `Get-RGGroupList`
<a name="resource-groups_ListGroups_powershell_5_topic"></a>

以下程式碼範例顯示如何使用 `Get-RGGroupList`。

**Tools for PowerShell V5**  
**範例 1：此範例會列出已建立的資源群組。**  

```
Get-RGGroupList
```
**輸出：**  

```
GroupArn                                                                  GroupName
--------                                                                  ---------
arn:aws:resource-groups:eu-west-1:123456789012:group/auto-no              auto-no
arn:aws:resource-groups:eu-west-1:123456789012:group/auto-yes             auto-yes
arn:aws:resource-groups:eu-west-1:123456789012:group/build600             build600
```
+  如需 API 詳細資訊，請參閱《AWS Tools for PowerShell Cmdlet 參考 (V5)》**中的 [ListGroups](https://docs.aws.amazon.com/powershell/v5/reference)。

### `Get-RGGroupQuery`
<a name="resource-groups_GetGroupQuery_powershell_5_topic"></a>

以下程式碼範例顯示如何使用 `Get-RGGroupQuery`。

**Tools for PowerShell V5**  
**範例 1：此範例會擷取給定資源群組的資源查詢**  

```
Get-RGGroupQuery -GroupName auto-no | Select-Object -ExpandProperty ResourceQuery
```
**輸出：**  

```
Query                                                                                        Type
-----                                                                                        ----
{"ResourceTypeFilters":["AWS::EC2::Instance"],"TagFilters":[{"Key":"auto","Values":["no"]}]} TAG_FILTERS_1_0
```
+  如需 API 詳細資訊，請參閱《AWS Tools for PowerShell Cmdlet 參考 (V5)》**中的 [GetGroupQuery](https://docs.aws.amazon.com/powershell/v5/reference)。

### `Get-RGGroupResourceList`
<a name="resource-groups_ListGroupResources_powershell_5_topic"></a>

以下程式碼範例顯示如何使用 `Get-RGGroupResourceList`。

**Tools for PowerShell V5**  
**範例 1：此範例根據依資源類型的篩選，列出群組資源**  

```
Get-RGGroupResourceList -Filter @{Name="resource-type";Values="AWS::EC2::Instance"} -GroupName auto-yes | Select-Object -ExpandProperty ResourceIdentifiers
```
**輸出：**  

```
ResourceArn                                                     ResourceType
-----------                                                     ------------
arn:aws:ec2:eu-west-1:123456789012:instance/i-0123bc45b567890e1 AWS::EC2::Instance
arn:aws:ec2:eu-west-1:123456789012:instance/i-0a1caf2345f67d8dc AWS::EC2::Instance
arn:aws:ec2:eu-west-1:123456789012:instance/i-012e3cb4df567e8aa AWS::EC2::Instance
arn:aws:ec2:eu-west-1:123456789012:instance/i-0fd12dd3456789012 AWS::EC2::Instance
```
+  如需 API 詳細資訊，請參閱《AWS Tools for PowerShell Cmdlet 參考 (V5)》**中的 [ListGroupResources](https://docs.aws.amazon.com/powershell/v5/reference)。

### `Get-RGResourceTag`
<a name="resource-groups_GetTags_powershell_5_topic"></a>

以下程式碼範例顯示如何使用 `Get-RGResourceTag`。

**Tools for PowerShell V5**  
**範例 1：此範例會列出給定資源群組 arn 的標籤**  

```
Get-RGResourceTag -Arn arn:aws:resource-groups:eu-west-1:123456789012:group/workboxes
```
**輸出：**  

```
Key       Value
---       -----
Instances workboxes
```
+  如需 API 詳細資訊，請參閱《AWS Tools for PowerShell Cmdlet 參考 (V5)》**中的 [GetTags](https://docs.aws.amazon.com/powershell/v5/reference)。

### `New-RGGroup`
<a name="resource-groups_CreateGroup_powershell_5_topic"></a>

以下程式碼範例顯示如何使用 `New-RGGroup`。

**Tools for PowerShell V5**  
**範例 1：此範例會建立新的標籤型 AWS 資源群組資源群組，名為 TestPowerShellGroup。群組包含目前區域中，以標籤索引鍵 "Name" 和標籤值 "test2" 標記的 Amazon EC2 執行個體。命令會傳回群組的查詢和類型，以及操作的結果。**  

```
$ResourceQuery = New-Object -TypeName Amazon.ResourceGroups.Model.ResourceQuery
$ResourceQuery.Type = "TAG_FILTERS_1_0"
$ResourceQuery.Query = '{"ResourceTypeFilters":["AWS::EC2::Instance"],"TagFilters":[{"Key":"Name","Values":["test2"]}]}'
$ResourceQuery

New-RGGroup -Name TestPowerShellGroup -ResourceQuery $ResourceQuery -Description "Test resource group."
```
**輸出：**  

```
Query                                                                                           Type           
-----                                                                                           ----           
{"ResourceTypeFilters":["AWS::EC2::Instance"],"TagFilters":[{"Key":"Name","Values":["test2"]}]} TAG_FILTERS_1_0

LoggedAt         : 11/20/2018 2:40:59 PM
Group            : Amazon.ResourceGroups.Model.Group
ResourceQuery    : Amazon.ResourceGroups.Model.ResourceQuery
Tags             : {}
ResponseMetadata : Amazon.Runtime.ResponseMetadata
ContentLength    : 338
HttpStatusCode   : OK
```
+  如需 API 詳細資訊，請參閱《AWS Tools for PowerShell Cmdlet 參考 (V5)》**中的 [CreateGroup](https://docs.aws.amazon.com/powershell/v5/reference)。

### `Remove-RGGroup`
<a name="resource-groups_DeleteGroup_powershell_5_topic"></a>

以下程式碼範例顯示如何使用 `Remove-RGGroup`。

**Tools for PowerShell V5**  
**範例 1：此範例會移除具名資源群組**  

```
Remove-RGGroup -GroupName non-tag-cfn-elbv2
```
**輸出：**  

```
Confirm
Are you sure you want to perform this action?
Performing the operation "Remove-RGGroup (DeleteGroup)" on target "non-tag-cfn-elbv2".
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (default is "Y"): Y

Description GroupArn                                                               Name
----------- --------                                                               ----
            arn:aws:resource-groups:eu-west-1:123456789012:group/non-tag-cfn-elbv2 non-tag-cfn-elbv2
```
+  如需 API 詳細資訊，請參閱《AWS Tools for PowerShell Cmdlet 參考 (V5)》**中的 [DeleteGroup](https://docs.aws.amazon.com/powershell/v5/reference)。

### `Remove-RGResourceTag`
<a name="resource-groups_Untag_powershell_5_topic"></a>

以下程式碼範例顯示如何使用 `Remove-RGResourceTag`。

**Tools for PowerShell V5**  
**範例 1：此範例會從資源群組中移除提及的標籤**  

```
Remove-RGResourceTag -Arn arn:aws:resource-groups:eu-west-1:123456789012:group/workboxes -Key Instances
```
**輸出：**  

```
Confirm
Are you sure you want to perform this action?
Performing the operation "Remove-RGResourceTag (Untag)" on target "arn:aws:resource-groups:eu-west-1:933303704102:group/workboxes".
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (default is "Y"): Y

Arn                                                            Keys
---                                                            ----
arn:aws:resource-groups:eu-west-1:123456789012:group/workboxes {Instances}
```
+  如需 API 詳細資訊，請參閱《AWS Tools for PowerShell Cmdlet 參考 (V5)》**中的 [Untag](https://docs.aws.amazon.com/powershell/v5/reference)。

### `Update-RGGroup`
<a name="resource-groups_UpdateGroup_powershell_5_topic"></a>

以下程式碼範例顯示如何使用 `Update-RGGroup`。

**Tools for PowerShell V5**  
**範例 1：此範例會更新群組的描述**  

```
Update-RGGroup -GroupName auto-yes -Description "Instances auto-remove"
```
**輸出：**  

```
Description             GroupArn                                                      Name
-----------             --------                                                      ----
Instances to be cleaned arn:aws:resource-groups:eu-west-1:123456789012:group/auto-yes auto-yes
```
+  如需 API 詳細資訊，請參閱《AWS Tools for PowerShell Cmdlet 參考 (V5)》**中的 [UpdateGroup](https://docs.aws.amazon.com/powershell/v5/reference)。

### `Update-RGGroupQuery`
<a name="resource-groups_UpdateGroupQuery_powershell_5_topic"></a>

以下程式碼範例顯示如何使用 `Update-RGGroupQuery`。

**Tools for PowerShell V5**  
**範例 1：此範例會建立查詢物件，並更新群組的查詢。**  

```
$query = [Amazon.ResourceGroups.Model.ResourceQuery]::new()
$query.Type = [Amazon.ResourceGroups.QueryType]::TAG_FILTERS_1_0
$query.Query = @{
  ResourceTypeFilters = @('AWS::EC2::Instance')
  TagFilters = @(@{
  Key='Environment'
  Values='Build600.11'
  })
} | ConvertTo-Json -Compress -Depth 4

Update-RGGroupQuery -GroupName build600 -ResourceQuery $query
```
**輸出：**  

```
GroupName ResourceQuery
--------- -------------
build600  Amazon.ResourceGroups.Model.ResourceQuery
```
+  如需 API 詳細資訊，請參閱《AWS Tools for PowerShell Cmdlet 參考 (V5)》**中的 [UpdateGroupQuery](https://docs.aws.amazon.com/powershell/v5/reference)。