全部產品
Search
文件中心

Elastic Compute Service:ModifyInvocationAttribute - 修改雲助手命令的執行屬性

更新時間:Apr 04, 2026

修改雲助手定時任務的執行資訊,包括命令內容、定時執行方式、添加ECS執行個體或受管理的執行個體到任務。

介面說明

  • 支援修改以下執行方式的任務(參見 DescribeInvocations 返回的RepeatMode值):
    • Period:周期執行。

    • NextRebootOnly:當執行個體下一次啟動時,自動執行命令。

    • EveryReboot:執行個體每一次啟動都將自動執行命令。

  • 支援修改以下狀態的任務(參見 DescribeInvocations 返回的InvocationStatus值):
    • Pending:系統正在校正或發送命令。存在至少一台執行個體的命令執行狀態為 Pending,則總執行狀態為 Pending。

    • Running:命令正在執行個體上運行。存在至少一台執行個體的命令執行狀態為 Running,則總執行狀態為 Running。

    • Scheduled:定時執行的命令已發送,等待運行。存在至少一台執行個體的命令執行狀態為 Scheduled,則總執行狀態為 Scheduled。

    • Stopping:正在停止任務。存在至少一台執行個體的命令執行狀態為 Stopping,則總執行狀態為 Stopping。

  • 修改定時任務執行資訊(包括命令內容、自訂參數、執行頻率)前,已執行的 ECS 執行個體或受管理的執行個體的雲助手 Agent 版本需要高於以下對應的版本。
    • Linux:2.2.3.541

    • Windows:2.1.3.541

    • 如果調用結果返回InvalidOperation.CloudAssistantVersionUnsupported錯誤碼,請將雲助手 Agent 更新至最新版本。

  • 當您執行一個雲助手公用命令時,無法修改命令內容CommandContent

  • 當您修改了命令內容CommandContent,且調用 InvokeCommand 或調用 RunCommand 時設定KeepCommandtrue建立任務,將會新增一條命令並長期保留,並佔用雲助手命令配額;在一個地區下,您最多可以保有 500~50,000 條雲助手命令。您也可以申請提升配額,關於如何查詢及提升配額,請參見配額管理

調試

您可以在OpenAPI Explorer中直接運行該介面,免去您計算簽名的困擾。運行成功後,OpenAPI Explorer可以自動產生SDK程式碼範例。

調試

授權資訊

下表是API對應的授權資訊,可以在RAM權限原則語句的Action元素中使用,用來給RAM使用者或RAM角色授予調用此API的許可權。具體說明如下:

  • 操作:是指具體的許可權點。

  • 存取層級:是指每個操作的存取層級,取值為寫入(Write)、讀取(Read)或列出(List)。

  • 資源類型:是指操作中支援授權的資源類型。具體說明如下:

    • 對於必選的資源類型,用前面加 * 表示。

    • 對於不支援資源級授權的操作,用全部資源表示。

  • 條件關鍵字:是指雲產品自身定義的條件關鍵字。

  • 關聯操作:是指成功執行操作所需要的其他許可權。操作者必須同時具備關聯操作的許可權,操作才能成功。

操作

存取層級

資源類型

條件關鍵字

關聯操作

ecs:ModifyInvocationAttribute

update

*Invocation

acs:ecs:{#regionId}:{#accountId}:invocation/{#invocationId}

Instance

acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}

請求參數

名稱

類型

必填

描述

樣本值

RegionId

string

地區 ID。

cn-hangzhou

InstanceId

array

待加入任務的 ECS 執行個體 ID 或受管理的執行個體 ID。

string

待加入任務的 ECS 執行個體 ID 或受管理的執行個體 ID。待加入的執行個體數量與已執行的執行個體數量總和不得超過 100。

i-bp1i7gg30r52z2em****

RegionId

string

地區 ID。

cn-hangzhou

InvokeId

string

待修改任務的命令執行 ID。

t-hz0jdfwd9f****

CommandContent

string

待修改後的命令內容。命令內容可以是明文內容或 Base 64 編碼後的內容。您需要注意:

  • 若建立待修改任務時選擇了儲存命令,命令內容在 Base 64 編碼後的大小不能超過 18 KB;若選擇了不儲存命令,命令內容在 Base 64 編碼後的大小不能超過 24 KB。

  • 如果您的命令內容是 Base 64 編碼後的內容,則必須設定ContentEncoding=Base64

  • 指定參數EnableParameter=true可在命令內容中啟用自訂參數功能:

    • {{}}包含的方式定義自訂參數,在{{}}內參數名前後的空格以及分行符號會被忽略。

    • 自訂參數個數不能超過 20 個。

    • 自訂參數名允許 a-zA-Z0-9-_的組合,不支援 acs::首碼指定非內建環境參數,不支援其餘字元,參數名不區分大小寫。

    • 單個自訂參數名不能超過 64 位元組。

  • 您可以指定內建環境參數作為自訂參數,執行命令時無需手動對參數賦值,雲助手將為您自動替換為環境中對應的值。支援指定以下內建環境參數:

    • {{ACS::RegionId}}:地區 ID。

    • {{ACS::AccountId}}:阿里雲主帳號 UID。

    • {{ACS::InstanceId}}:執行個體 ID。命令下發到多個執行個體時,如需指定{{ACS::InstanceId}}作為內建環境參數,需確保雲助手 Agent 不低於以下版本:
      • Linux:2.2.3.309

      • Windows:2.1.3.309

    • {{ACS::InstanceName}}:執行個體名稱。命令下發到多個執行個體時,如需指定{{ACS::InstanceName}}作為內建環境參數,需確保雲助手 Agent 不低於以下版本:
      • Linux:2.2.3.344

      • Windows:2.1.3.344

    • {{ACS::InvokeId}}:命令執行 ID。如需指定{{ACS::InvokeId}}作為內建環境參數,需確保雲助手 Agent 不低於以下版本:
      • Linux:2.2.3.309

      • Windows:2.1.3.309

    • {{ACS::CommandId}}:命令 ID。通過調用本介面執行命令時,如需指定{{ACS::CommandId}}作為內建環境參數,需確保雲助手 Agent 不低於以下版本:
      • Linux:2.2.3.309

      • Windows:2.1.3.309

ZWNobyAxMjM=

EnableParameter

boolean

修改命令中是否包含自訂參數。

  • 當您啟用自訂參數或修改自訂參數Parameters時,該參數需設定為true

  • 當您不修改自訂參數Parameters時,不設定該參數或設定為false

false

Parameters

object

命令中包含自訂參數時,修改執行命令時傳入的自訂參數的索引值對。

自訂參數的個數範圍為 0~10,且您需要注意:

  • 鍵不允許為空白字串,最多支援 64 個字元。

  • 值允許為空白字串。

  • 自訂參數與原始命令內容在 Base 64 編碼後,若建立待修改任務時選擇了儲存命令,命令內容在 Base 64 編碼後的大小不能超過 18 KB;若選擇了不儲存命令,命令內容在 Base 64 編碼後的大小不能超過 24 KB。

  • 設定的自訂參數名集合必須為建立命令時定義的參數集的子集。對於未傳入的參數,您可以使用Null 字元串代替。

預設值為空白,表示不涉及自訂參數索引值對的修改。

{"name":"Jack", "accessKey":"LTAI*************"}

Frequency

string

待修改的定時執行頻率。僅當RepeatModePeriod時生效。目前支援三種定時執行方式:固定時間間隔執行(基於 Rate 運算式)、僅在指定時間執行一次、基於時鐘定時執行(基於 Cron 運算式)。

  • 固定時間間隔執行:基於 Rate 運算式,按照設定的時間間隔執行命令。時間間隔支援按秒(s) 、分鐘(m) 、小時(h)和天(d)來選擇,適用於在固定時間間隔執行任務的情境。格式為rate(<執行間隔數值><執行間隔單位>),如 5 分鐘執行一次,格式為rate(5m)。使用固定時間間隔執行有以下限制:

    • 設定的時間間隔不大於 7 天、不小於 60 秒,且需大於建立定時任務時指定的逾時時間。

    • 執行間隔只基於固定頻率,與任務實際執行需要的時間無關。例如設定每 5 分鐘執行一次命令,任務需要 2 分鐘執行完成,則在任務完成 3 分鐘後繼續執行下一輪。

    • 按照任務的建立時間(參見DescribeInvocations返回的 CreationTime ,請注意不是修改時間)及修改後的執行間隔計算下一次執行時間。

  • 僅在指定時間執行一次:按照設定的時區和執行時間點執行一次命令。格式為at(yyyy-MM-dd HH:mm:ss <時區>),即at(年-月-日 時:分:秒 <時區>)。如果不指定時區,預設為 UTC 時區。時區支援以下三種形式:

    • 時區全稱: 如Asia/Shanghai(中國/上海時間)、America/Los_Angeles(美國/洛杉磯時間)等。

    • 時區相對于格林威治時間的位移量: 如GMT+8:00(東八區)、GMT-7:00(西七區)等。使用 GMT 格式時,小時位不支援添加前置字元為零。

    • 時區縮寫: 僅支援 UTC(國際標準時間間)。

    如果指定在中國/上海時間 2022 年 06 月 06 日 13 時 15 分 30 秒執行一次,格式為:at(2022-06-06 13:15:30 Asia/Shanghai);如果指定在西七區 2022 年 06 月 06 日 13 時 15 分 30 秒執行一次,格式為:at(2022-06-06 13:15:30 GMT-7:00)

  • 基於時鐘定時執行(基於 Cron 運算式):基於 Cron 運算式,按照設定的定時任務執行命令。格式為<秒> <分鐘> <小時> <日期> <月份> <星期> <年份(可選)> <時區>,即<Cron 運算式> <時區>。在指定的時區下,根據 Cron 運算式推算定時任務執行時間並執行。若不指定時區,預設為執行定時任務執行個體的系統內部時區。關於 Cron 運算式的更多資訊,請參見 Cron 運算式。時區支援以下三種形式:

    • 時區全稱: 如Asia/Shanghai(中國/上海時間)、America/Los_Angeles(美國/洛杉磯時間)等。

    • 時區相對于格林威治時間的位移量: 如GMT+8:00(東八區)、GMT-7:00(西七區)等。使用 GMT 格式時,小時位不支援添加前置字元為零。

    • 時區縮寫: 僅支援 UTC(國際標準時間間)。 例如,在中國/上海時間,2022 年每天上午 10:15 執行一次命令,格式為0 15 10 ? * * 2022 Asia/Shanghai;在東八區時間,2022 年每天上午 10:00 到 11:30 每隔半小時執行,格式為0 0/30 10-11 * * ? 2022 GMT+8:00;在 UTC 時間,從 2022 年開始,每隔兩年的 10 月每天下午 14:00 到下午 14:55 時間段內每隔 5 分鐘執行,格式為0 0/5 14 * 10 ? 2022/2 UTC

    說明

    設定的最小時間間隔需大於或等於建立定時任務時指定的逾時時間,且不小於 10 秒。

0 */20 * * * *

ContentEncoding

string

命令內容(CommandContent)的編碼方式。取值範圍(不區分大小寫):

  • PlainText:不編碼,採用明文傳輸。

  • Base64:Base 64 編碼。

預設值:PlainText,填寫錯誤時會當作 PlainText 處理。

PlainText

ClientToken

string

保證請求等冪性。從您的用戶端產生一個參數值,確保不同請求間該參數值唯一。ClientToken 只支援 ASCII 字元,且不能超過 64 個字元。更多資訊,請參見如何保證等冪性

123e4567-e89b-12d3-a456-426655440000

返回參數

名稱

類型

描述

樣本值

object

RequestId

string

請求 ID。

473469C7-AA6F-4DC5-B3DB-A3DC0DE3****

CommandId

string

命令 ID。

  • 只有CommandContent發生變更,才新增一條命令,返回新增的CommandId

  • CommandContent未變更時,不會新增命令,將返回當前正在執行命令的CommandId

  • 若調用 InvokeCommand ,或調用 RunCommand 時選擇了KeepCommandtrue,將會保留新增的命令;否則執行完成或手動停止任務時,將刪除任務所有關聯的命令。

c-hz01272yr52****

樣本

正常返回樣本

JSON格式

{
  "RequestId": "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****",
  "CommandId": "c-hz01272yr52****"
}

錯誤碼

HTTP status code

錯誤碼

錯誤資訊

描述

400 InvalidParameter.Frequency The specified parameter Frequency is not valid. 指定的參數Frequency不合法。
400 InvalidParameters.KeyDuplicate The key in the parameter Parameters cannot be duplicated. 參數Parameters中的鍵不能重複。
400 InvalidParameters.KeyNotMatch The key in the parameter Parameters do not match those defined when creating the command. 參數Parameters中的鍵與建立命令時定義的不匹配。
400 InvalidParameters.KeyMalformed The key in the parameter Parameters is not valid. 參數Parameters中的鍵不合法。
400 InvalidParameters.KeyEmpty The key in the parameter Parameters cannot be empty. 參數Parameters中的鍵不可為空。
400 InvalidCommandContent.DecodeError The specified parameter CommandContent can not be Base64 decoded. 參數CommandContent無法通過Base64解碼。
400 InvalidClientToken.Malformed The specified parameter clientToken is not valid. 指定的等冪參數不合法。
500 InternalError An error occurred when you dispatched the request. 發送請求時發生錯誤,請稍後重試。
403 InvalidInstanceId.OSTypeUnsupported The OS type of the instance corresponding to the parameter InstanceId does not support the specified command type. 參數InstanceId對應執行個體的作業系統類型不支援指定的命令類型。
403 InvalidOperation.RepeatModeUnsupported The operation is not supported for current repeat mode of invocation. 當前命令執行的方式不支援該操作。
403 InvalidOperation.InvokeAlreadyFinished The operation is not supported for finished invocation. 已執行完成的任務不支援該操作。
403 InvalidOperation.CloudAssistantVersionUnsupported The operation is not supported for current CloudAssistant version of instance. 當前執行個體的雲助手版本不支援該操作。
403 InvalidOperation.ModifyPublicCommandUnsupported Modification of the content of Public Command is not supported. 不支援修改公用命令的內容。
403 InvalidCommandContent.LengthLimitExceeded The length of the parameter CommandContent exceeds the limit of %s KB characters.
403 Operation.Forbidden The operation is not permitted. 該操作是不被允許的。
403 InvalidParameters.CountLimitExceeded The count of the parameter Parameters exceeds the limit of 10. 參數Parameters的數量超過了10的限制。
403 InvalidParameters.KeyLengthLimitExceeded The length of the key in the parameter Parameters exceeds the limit of 64 characters. 參數Parameters中鍵的長度超過了64個字元的限制。
403 InvalidInstanceId.CountLimitExceeded The count of the parameter InstanceId exceeds the limit of %s.
403 CommandLimitExceeded The count of command in current region exceeds the limit of %s.
403 InvalidParameters.ValueTypeUnsupported The type of the value in the parameter Parameters is not supported. 不支援參數Parameters中值的類型。
403 IdempotentParameterMismatch The specified parameter has changed while using an already used clientToken. 指定的客戶令牌已經被使用。
403 IdempotentProcessing The previous idempotent request(s) is still processing. 先前的等冪請求仍在處理中,請稍後重試。
404 InvalidInvokeId.NotFound The specified parameter InvokeId does not exist. 指定的命令執行ID不存在。
404 InvalidInstanceId.NotFound The specified parameter InstanceId does not exist. 指定的執行個體ID不存在。
404 InvalidRegionId.NotFound The specified parameter RegionId does not exist. 指定的地區ID不存在。
404 InvalidCommandId.NotFound The specified CommandId does not exist.

訪問錯誤中心查看更多錯誤碼。

變更歷史

更多資訊,參考變更詳情