本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用中的 Amazon 服务 Amazon Tools for PowerShell
本节提供了使用 Amazon Tools for PowerShell 访问 Amazon 服务的示例。这些示例有助于演示如何使用 cmdlet 执行实际 Amazon 任务。这些示例依赖于工具提供 PowerShell 的 cmdlet。要查看有哪些 cmdlet 可用,请参阅 Amazon Tools for PowerShell Cmdlet 参考。
PowerShell 文件串联编码
中的某些 cmdle Amazon Tools for PowerShell t 会编辑您现有的文件或记录。 Amazon例如Edit-R53ResourceRecordSet
,它调用 Amazon Route 53。ChangeResourceRecordSetsAPI
在 PowerShell 5.1 或更早版本中编辑或连接文件时,将输出 PowerShell 编码为 -16,而不是 UTF -8。UTF这可能会添加不需要的字符并创建无效的结果。十六进制编辑器可以显示不需要的字符。
为避免将文件输出转换为 UTF -16,您可以通过管道将命令传送到 PowerShell的 Out-File
cmdlet 中并指定 UTF -8 编码,如以下示例所示:
PS >
*some file concatenation command*
| Out-File filename.txt
-Encoding utf8
如果您在 PowerShell 控制台中运行 Amazon CLI 命令,则同样的行为适用。你可以通过管道将 Amazon CLI 命令的输出传送到 PowerShell 控制台Out-File
中。其他 cmdlet(例如 Export-Csv
或 Export-Clixml
)也具有 Encoding
参数。有关具有 Encoding
参数并允许您纠正联接文件输出的编码的 cmdlet 的完整列表,请运行以下命令:
PS >
Get-Command -ParameterName "Encoding"
注意
PowerShell 6.0 及更高版本(包括 C PowerShell ore)会自动为串联文件输出保留 UTF -8 编码。
PowerShell工具返回的对象
为了在原生 PowerShell 环境中 Amazon Tools for PowerShell 更有用, Amazon Tools for PowerShell cmdlet 返回的对象是。 NET对象,而不是通常从API中对应的返回的JSON文本对象 Amazon SDK。例如,Get-S3Bucket
发出Buckets
集合,而不是 Amazon S3 JSON 响应对象。可以将Buckets
馆藏放入 PowerShell 管道中,并以适当的方式与之互动。同样,Get-EC2Instance
发出 a。Reservation
NET对象集合,不是DescribeEC2Instances
JSON结果对象。这种行为是设计使 Amazon Tools for PowerShell 体验与惯用语 PowerShell更加一致。
如果您需要,您可以使用实际的服务响应。它们作为 note
属性存储在返回的对象上。对于支持使用NextToken
字段进行分页的API操作,这些操作也将作为note
属性附加。
Amazon EC2
本部分介绍启动 Amazon EC2 实例所需的步骤,包括如何:
-
检索 Amazon 系统映像列表 (AMIs)。
-
创建用于SSH身份验证的 key pair。
-
创建和配置 Amazon EC2 安全组。
-
启动实例并检索关于它的信息。
Amazon S3
本节演示创建托管在 Amazon S3 中的静态网站所需的步骤。它将介绍如何:
-
创建和删除 Amazon S3 存储桶。
-
将文件作为对象上传到 Amazon S3 存储桶中。
-
从 Amazon S3 存储桶中删除对象。
-
指定 Amazon S3 存储桶作为网站。
Amazon Lambda 和 Amazon Tools for PowerShell
本节简要概述了适用于 PowerShell 模块的 Amazon Lambda 工具,并描述了设置该模块所需的步骤。
亚马逊SNS和亚马逊 SQS
本部分介绍为亚马逊SQS队列订阅亚马逊SNS主题所需的步骤。它将介绍如何:
-
创建 Amazon SNS 主题。
-
创建亚马逊SQS队列。
-
为队列订阅 主题。
-
发送消息到主题。
-
从队列接收消息。
CloudWatch
本节提供了如何将自定义数据发布到的示例 CloudWatch。
-
将自定义指标发布到您的 CloudWatch 控制面板。