

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

# 从命令提示符运行自动化
<a name="run-automations-from-command-prompt"></a>

尽管我们建议通过 Web 界面运行自动化作业，但您可以通过自动化服务器上的命令行手动运行自动化脚本。这为组织不能或不想在环境中使用AWS CMF凭证管理器、AWS Secrets Manager和AWS Systems Manager的组合，或者如果AWS上的云迁移工厂用户需要提供多因素身份验证 (MFA) 一次性访问代码才能登录 AWS 上的云迁移工厂，则提供了其他选项。

从命令行运行脚本时，无法从 Web 界面的**作业**视图中查看作业历史记录和日志。日志输出将仅定向到命令行输出。这些脚本仍然可以访问 AWS 上的云迁移工厂 APIs 以读取和更新记录，以及通过提供的其他功能 APIs。

我们建议将脚本存储在脚本库或其他中心位置，以确保您访问和使用的是最新版本的脚本或当前已批准使用的版本。

## 手动运行自动化包
<a name="manually-running-an-automation-package"></a>

本节介绍从 AWS 上的 Cloud Migration Factory 下载软件包并在自动化服务器上手动运行的步骤。您也可以按照其他脚本源位置的流程进行操作，方法是将步骤 1 和 2 替换为特定于源的下载步骤。

1. 如果脚本存储在 AWS 的云迁移工厂中，请按照[下载脚本包](scripts-management.md#download-script-packages)中介绍的步骤获取自动化包 zip 文件。

1. 将 zip 文件复制到自动化服务器上的某个位置（例如 `c:\migrations\scripts`），然后解压其内容。

1. 将 `FactoryEndpoints.json` 文件复制到每个解压缩的脚本文件夹。使用包含服务器的 Cloud Migration Factory 实例的特定 API 端点或此自动化作业将引用的其他记录配置文件。有关如何[创建此文件的更多信息，请参阅创建 FactoryEndpoints .json](#creation-of-the-factoryendpoints.json)。

1. 在命令行中，确保您位于解压缩包的根目录中，然后运行以下命令：

```
python [package master script file] [script arguments]
```

 *软件包主脚本文件-* 可以从`MasterFileName`密钥`Package-Structure.yml`下方获取。

 *脚本参数*-有关参数的信息在`Arguments`密钥`Package-Structure.yml`下方提供。

1. 这些脚本将请求 AWS 上的 Cloud Migration Factory APIs 和远程服务器所需的证书。在此过程中，任何手动输入的凭证都会缓存在内存中，以避免再次输入相同的凭证。如果您输入脚本参数来访问使用凭证管理器功能存储的机密，则需要访问 AWS Secrets Manager 和相关密钥。如果由于任何原因导致检索密钥失败，脚本将提示输入用户凭证。

## FactoryEndpoints.json 的创建
<a name="creation-of-the-factoryendpoints.json"></a>

我们建议部署 Cloud Migration Factory on AWS 解决方案时创建一次此文件，因为内容在初始部署后不会更改，并且存储在自动化服务器的中心位置。此文件为自动化脚本提供了 Cloud Migration Factory on AWS API 端点和其他关键参数。下方显示的是文件的默认内容示例：

```
{
 "UserApi": "cmfuserapi",
 "VpceId": "",
 "ToolsApi": "cmftoolsapi",
 "Region": "us-east-1",
 "UserPoolId": "us-east-1_AbCdEfG",
 "UserPoolClientId": "123456abcdef7890ghijk",
 "LoginApi": "cmfloginapi"
}
```

**注意**  
为已部署的 AWS 云迁移工厂实例撰写此文件所需的大部分信息均可从已部署堆栈的 AWS CloudFormation **输出**选项卡获得，但以下`UserPoolClientId`信息除外。通过完成以下步骤获取此值：

1. 导航到 Amazon Cognito 控制台。

1. 打开**用户群体配置**。

1. 选择**应用程序集成**，它将提供**应用程序客户端配置**。

```
{
 "UserApi": <UserApi-value>,
 "Region": <Region-value>,
 "UserPoolId": <UserPoolId-value>,
 "UserPoolClientId": <Amazon-Cognito-user-pool-app-clients-console>,
 "LoginApi": <LoginApi-value>
}
```

将*<LoginApi-value>*、*<UserApi-value>**<Region-value>*、和*<UserPoolId-value>*替换为您从 AWS O CloudFormation utputs 控制台中检索到的相应值。不要在末尾添加正斜杠 (/)。 URLs

该文件有一个可选 `DefaultUser` 键。您可以将此密钥的值设置为用于访问 AWS 实例上的云迁移工厂的默认用户 ID，这样就不必每次都输入它。当系统提示您输入 Cloud Migration Factory 用户 ID 时，您可以输入用户 ID，也可以按 Enter 键使用默认值。只有在手动运行脚本时才能执行此操作。