新建一條 雲助手 命令。
描述
- 您可以建立以下類型的命令:
- Windows 執行個體適用的 Bat 指令碼或直譯式程式(
RunBatScript
) - Windows 執行個體適用的 PowerShell 指令碼或直譯式程式(
RunPowerShellScript
) - Linux 執行個體適用的 Shell 指令碼或直譯式程式(
RunShellScript
)
- Windows 執行個體適用的 Bat 指令碼或直譯式程式(
- 您可以通過指定參數
TimeOut
為命令設定在 ECS 執行個體中執行時最大的逾時時間,命令執行逾時後,雲助手用戶端 會強制終止命令進程,即取消命令的 PID。- 對於單次執行,逾時後,該命令針對指定的 ECS 執行個體的執行狀態(
InvokeRecordStatus
)變為 執行失敗(Failed
)。 - 對於周期執行:
- 周期執行的逾時時間對每一次執行記錄均有效。
- 某次執行逾時後,該次執行記錄的狀態(
InvokeRecordStatus
)變為 執行失敗(Failed
)。 - 上次執行逾時與否不影響下一次執行。
- 對於單次執行,逾時後,該命令針對指定的 ECS 執行個體的執行狀態(
- 您可以通過指定參數
WorkingDir
為命令指定執行路徑。對於 Linux 執行個體,預設在管理員 root 使用者的 home 目錄下,具體為/root
目錄。對於 Windows 執行個體,預設在雲助手用戶端進程所在目錄,例如,C:\ProgramData\aliyun\assist\$(version)
。 - 在一個地域下,您最多能建立 100 條雲助手命令。
請求參數
名稱 | 類型 | 是否必需 | 描述 |
---|---|---|---|
Action | String | 是 | 系統規定參數。取值:CreateCommand |
RegionId | String | 是 | 地域 ID。您可以調用 DescribeRegions 查看最新的阿里雲地域列表。 |
Name | String | 是 | 命令名稱,支援全字元集。長度不得超過 30 個字元。 |
Type | String | 是 | 命令的類型。取值範圍:
|
Description | String | 否 | 命令描述,支援全字元集。長度不得超過100個字元。 |
CommandContent | String | 否 | 命令 Base 64 編碼後的內容。當您傳入請求參數 Type 後,必須同時傳入該參數。該參數的值必須使用 Base 64 編碼後傳輸,且指令碼或直譯式程式內容的大小在 Base 64 編碼之後不能超過 16 KB。 |
WorkingDir | String | 否 | 您建立的命令在 ECS 執行個體中啟動並執行目錄。預設值:
|
TimeOut | Integer | 否 | 您建立的命令在 ECS 執行個體中執行時最大的逾時時間,單位為秒。當因為某種原因無法運行您建立的命令時,會出現逾時現象;逾時後,會強制終止命令進程,即取消命令的 PID。 預設值:3600 |
返回參數
名稱 | 類型 | 描述 |
---|---|---|
CommandId | String | 命令 ID |
樣本
請求樣本
https://ecs.aliyuncs.com/?Action=CreateCommand
&RegionId=cn-hangzhou
&Name=Test
&Type=RunShellScript
&CommandContent=ZWNobyAxMjM=
&<公共請求參數>
正常返回樣本
XML 格式
<CreateCommandResponse>
<RequestId>E69EF3CC-94CD-42E7-8926-F133B86387C0</RequestId>
<CommandId>c-7d2a745b412b4601b2d47f6a768d3a14</CommandId>
</CreateCommandResponse>
JSON 格式
{
"RequestId":"E69EF3CC-94CD-42E7-8926-F133B86387C0",
"CommandId":"c-7d2a745b412b4601b2d47f6a768d3a14"
}
異常返回樣本
XML 格式
<Error>
<RequestId>E69EF3CC-94CD-42E7-8926-F133B86387C0</RequestId>
<HostId>ecs.aliyuncs.com</HostId>
<Code>MissingParameter.Name</Code>
<Message>The input parameter “Name” that is mandatory for processing this request is not supplied.</Message>
</Error>
JSON 格式
{
"RequestId": "E69EF3CC-94CD-42E7-8926-F133B86387C0",
"HostId": "ecs.aliyuncs.com"
"Code": "MissingParameter.Name"
"Message": "The input parameter “Name” that is mandatory for processing this request is not supplied."
}
錯誤碼
以下為本介面特有的錯誤碼。更多錯誤碼,請訪問 API 錯誤中心 。
錯誤碼 | 錯誤資訊 | HTTP 狀態碼 | 說明 |
---|---|---|---|
Invalid.CommandContent | The specified CommandContent is not valid or exceed max | 400 | 參數 CommandContent 不合法,或者參數 CommandContent 的值的原始內容超過了 16 KB。 |
MissingParameter.Name | The input parameter “Name” that is mandatory for processing this request is not supplied. | 400 | 您必須指定必需參數 Name 。 |
MissingParameter.RegionId | The input parameter “RegionId” that is mandatory for processing this request is not supplied. | 400 | 您必須指定必需參數 RegionId ,或者您暫時不能使用指定 RegionId 裡的資源。 |
MissingParameter.Type | The input parameter “Type” that is mandatory for processing this request is not supplied. | 400 | 您必須指定必需參數 Type 。 |
CmdContent.ExceedLimit | The length of the command content exceeds the upper limit. | 403 | 指令碼或直譯式程式內容的大小在 Base 64 編碼之後不能超過 16 KB。 |
CmdName.ExceedLimit | The length of the command name exceeds the upper limit. | 403 | 命令名稱長度不得超過 30 個字元。 |
CmdDesc.ExceedLimit | The length of the command description exceeds the upper limit. | 403 | 命令描述長度不得超過 100 個字元。 |
CmdCount.ExceedQuota | The total number of commands in the current region exceeds the quota. | 403 | 在一個地域下,您最多能建立 100 條雲助手命令。 |
InvalidCmdType.NotFound | The specified command type does not exist | 404 | 指定的參數 Type 不存在。 |
InvalidRegionId.NotFound | The RegionId provided does not exist in our items. | 404 | 指定的參數 RegionId 不存在。 |
InternalError.Dispatch | An internal error occurred when dispath the request | 500 | 內部錯誤,請稍後嘗試。 |