

的版本 5 (V5) AWS Tools for PowerShell 已经发布！

有关重大更改和迁移应用程序的信息，请参阅[迁移主题](https://docs.aws.amazon.com/powershell/v5/userguide/migrating-v5.html)。

 [https://docs.aws.amazon.com/powershell/v5/userguide/migrating-v5.html](https://docs.aws.amazon.com/powershell/v5/userguide/migrating-v5.html)

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

# `AWS.Tools`在 Linux 或 macOS 上安装（推荐）
<a name="install-aws.tools-on-linux-macos"></a>

有关 AWS Tools for PowerShell 在 Linux 或 macOS 上安装的一般信息，包括先决条件和其他选项，请参阅[父主题](pstools-getting-set-up-linux-mac.md)。

有关上预安装 PowerShell 的工具的信息 AWS CloudShell，请参阅[已安装在 CloudShell](pstools-getting-set-up-cloudshell.md)。

可以在运行 C PowerShell ore 6.0 或更高版本的计算机 AWS Tools for PowerShell 上安装模块化版本。有关如何安装 PowerShell Core 的信息，请参阅 Microsoft PowerShell 网站上[安装各种版本](https://docs.microsoft.com/en-us/powershell/scripting/install/installing-powershell)的。 PowerShell

您可以通过以下三种方式之一安装 `AWS.Tools`：
+ 使用 `AWS.Tools.Installer` 模块中的 cmdlet。该模块简化了其他 `AWS.Tools` 模块的安装和更新。`AWS.Tools.Installer` 需要 `PowerShellGet`，并自动下载和安装其更新版本。`AWS.Tools.Installer` 会自动保持您的模块版本同步。当您安装或更新到一个模块的较新版本时，`AWS.Tools.Installer` 中的 cmdlet 会自动将所有其他 `AWS.Tools` 模块更新为同一版本。

  该方法在以下过程中描述。
+ 从 `[AWS.Tools.zip](https://sdk-for-net.amazonwebservices.com/ps/v5/latest/AWS.Tools.zip)` 下载模块并将它们提取到其中一个模块目录中。您可以通过输出 `$Env:PSModulePath` 变量的值来查找模块目录。
+ 使用 `Install-Module` cmdlet 安装 PowerShell 库中的每个服务模块。

**使用 `AWS.Tools.Installer` 模块在 Linux 或 macOS 上安装 `AWS.Tools` 的步骤**

1. 通过运行以下命令启动 PowerShell 核心会话。

   ```
   $ pwsh
   ```
**注意**  
我们建议您*不要*以具有更高权限的管理员 PowerShell 身份运行，除非手头的任务需要这样做。这是因为此操作具有潜在的安全风险，并且不符合最低特权原则。

1. 要使用 `AWS.Tools.Installer` 模块安装模块化的 `AWS.Tools` 程序包，请运行以下命令。

   ```
   PS > Install-Module -Name AWS.Tools.Installer
   
   Untrusted repository
   You are installing the modules from an untrusted repository. If you trust this repository, change its InstallationPolicy value by running the Set-PSRepository cmdlet. Are you sure
    you want to install the modules from 'PSGallery'?
   [Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (default is "N"): y
   ```

   如果您收到存储库 “不可信” 的通知，系统会询问您是否要安装。输入**y** PowerShell 以允许安装模块。为了在不信任存储库的情况下避免出现提示并安装模块，您可以运行以下命令。

   ```
   PS > Install-Module -Name AWS.Tools.Installer -Force
   ```

1. 现在，您可以为要使用的每个服务安装模块。例如，以下命令将安装 Amazon EC2 和 Amazon S3 模块。此命令还会安装指定模块工作所需的任何依赖模块。例如，当您安装第一个 `AWS.Tools` 服务模块时，它还会安装 `AWS.Tools.Common`。这是所有 AWS 服务模块所需的共享模块。它还会删除模块的较早版本，并将其他模块更新到相同的较新版本。

   ```
   PS > Install-AWSToolsModule AWS.Tools.EC2,AWS.Tools.S3 -CleanUp
   Confirm
   Are you sure you want to perform this action?
     Performing the operation "Install-AWSToolsModule" on target "AWS Tools version 4.0.0.0".
     [Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (default is "Y"):
   
     Installing module AWS.Tools.Common version 4.0.0.0
     Installing module AWS.Tools.EC2 version 4.0.0.0
     Installing module AWS.Tools.Glacier version 4.0.0.0
     Installing module AWS.Tools.S3 version 4.0.0.0
   
     Uninstalling AWS.Tools version 3.3.618.0
     Uninstalling module AWS.Tools.Glacier
     Uninstalling module AWS.Tools.S3
     Uninstalling module AWS.Tools.SimpleNotificationService
     Uninstalling module AWS.Tools.SQS
     Uninstalling module AWS.Tools.Common
   ```
**注意**  
`Install-AWSToolsModule`cmdlet 从`PSRepository`命名 `PSGallery` ([https://www.powershellgallery.com/](https://www.powershellgallery.com/)) 下载所有请求的模块，并将存储库视为可信来源。有关此 `PSRepository` 的更多信息，请使用命令 `Get-PSRepository -Name PSGallery`。

   前面的命令会将模块安装到系统上的默认目录中。实际目录取决于您的操作系统的发行版和版本以及所 PowerShell安装的版本。例如，如果您在类似 RHEL 的系统上安装了 PowerShell 7，则默认模块很可能位于`/opt/microsoft/powershell/7/Modules`（或`$PSHOME/Modules`）中，而用户模块很可能位于。`~/.local/share/powershell/Modules`有关更多信息，请参阅微软 PowerShell 网站[ PowerShell 上的在 Linux 上安装](https://learn.microsoft.com/en-us/powershell/scripting/install/installing-powershell-on-linux)。要查看模块安装位置，请运行以下命令：

   ```
   PS > Get-Module -ListAvailable
   ```

   要安装其他模块，请使用相应的模块名称运行类似的命令，如图[PowerShell 库中所示](https://www.powershellgallery.com/packages?q=aws)。

## 脚本执行
<a name="enable-script-execution-aws-tools"></a>

`Set-ExecutionPolicy` 命令在非 Windows 系统上不可用。你可以运行`Get-ExecutionPolicy`，这表明在非 Windows 系统上运行的 PowerShell Core 中的默认执行策略设置为`Unrestricted`。有关更多信息，请参阅 Microsoft Technet 网站上的[关于执行策略](https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_execution_policies?view=powershell-5.1)。

 由于`PSModulePath`包含 AWS 模块目录的位置，因此 `Get-Module -ListAvailable` cmdlet 会显示您安装的模块。

**`AWS.Tools`**

```
PS > Get-Module -ListAvailable

    Directory: /Users/username/.local/share/powershell/Modules

ModuleType Version    Name                                PSEdition ExportedCommands
---------- -------    ----                                --------- ----------------
Binary     3.3.563.1  AWS.Tools.Common                    Desk      {Clear-AWSHistory, Set-AWSHistoryConfiguration, Initialize-AWSDefaultConfiguration, Clear-AWSDefaultConfigurat…
```

## 初始化您的 PowerShell 会话
<a name="linux-config-init-aws-tools"></a>

安装完之后，在基于 Linux 或 macOS 的系统 PowerShell 上启动时 AWS Tools for PowerShell，必须运行 “[初始化-AWSDefault 配置](https://docs.aws.amazon.com/powershell/v5/reference/items/Initialize-AWSDefaultConfiguration.html)” 来指定要使用的 AWS 访问密钥。有关 `Initialize-AWSDefaultConfiguration`的更多信息，请参阅[使用 AWS 凭证](specifying-your-aws-credentials.md)。

**注意**  
在的早期（3.3.96.0 之前）版本中，此 cmdlet 被 AWS Tools for PowerShell命名为。`Initialize-AWSDefaults`

## 版本控制
<a name="pstools-versioning-aws-tools"></a>

AWS AWS Tools for PowerShell 定期发布新版本以支持新的 AWS 服务和功能。要确定已安装的版本 AWS Tools for PowerShell ，请运行 [Get-AWSPower ShellVersion](https://docs.aws.amazon.com/powershell/v5/reference/items/Get-AWSPowerShellVersion.html) cmdlet。

例如：

```
PS > Get-AWSPowerShellVersion

AWS Tools for PowerShell
Version 5.0.3
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.

Amazon Web Services SDK for .NET
Core Runtime Version 4.0.0.13
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.

Release notes: https://github.com/aws/aws-tools-for-powershell/blob/main/changelogs/CHANGELOG.ALL.md

This software includes third party software subject to the following copyrights:
- Logging from log4net, Apache License
[http://logging.apache.org/log4net/license.html]
```

要查看当前版本工具中支持的 AWS 服务列表，请将`-ListServiceVersionInfo`参数添加到 [Get-AWSPower ShellVersion](https://docs.aws.amazon.com/powershell/v5/reference/items/Get-AWSPowerShellVersion.html) cmdlet 中。

要确定您正在运行 PowerShell 的版本，请输入`$PSVersionTable`以查看`$PSVersionTable`[自动变](https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_automatic_variables?view=powershell-6)量的内容。

例如：

```
PS > $PSVersionTable
Name                           Value
----                           -----
PSVersion                      6.2.2
PSEdition                      Core
GitCommitId                    6.2.2
OS                             Darwin 18.7.0 Darwin Kernel Version 18.7.0: Tue Aug 20 16:57:14 PDT 2019; root:xnu-4903.271.2~2/RELEASE_X86_64
Platform                       Unix
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
WSManStackVersion              3.0
```

## AWS Tools for PowerShell 在 Linux 或 macOS 上更新
<a name="pstools-updating-linux-aws-tools"></a>

随着更新版本的 AWS Tools for PowerShell 发布，您应该定期更新在本地运行的版本。

### 更新模块化的 `AWS.Tools` 模块
<a name="update-aws.tools-all-systems"></a>

要将 `AWS.Tools` 模块更新到最新版本，请运行以下命令：

```
PS > Update-AWSToolsModule -CleanUp
```

此命令更新当前安装的所有`AWS.Tools`模块，并在成功更新后删除早期版本。

**注意**  
`Update-AWSToolsModule`cmdlet 从`PSRepository`命名的 `PSGallery` ([https://www.powershellgallery.com/](https://www.powershellgallery.com/)) 下载所有模块，并将其视为可信来源。使用`Get-PSRepository -Name PSGallery`命令获取有关此内容的更多信息`PSRepository`。

## 相关信息
<a name="pstools-seealso-setup-aws-tools"></a>
+  [配置和使用 AWS Tools for PowerShell](pstools-getting-started.md) 
+  [在中呼叫 AWS 服务 AWS Tools for PowerShell](pstools-using.md) 