Todos os produtos
Search
Central de documentação

:CreateCommand

Última atualização: Jul 03, 2026

Cria um comando do Cloud Assistant.

Observações de uso

  • Você pode criar comandos dos seguintes tipos:
    • Comandos em lote (RunBatScript), aplicáveis a instâncias Windows
    • Comandos PowerShell (RunPowerShellScript), aplicáveis a instâncias Windows
    • Comandos Shell (RunShellScript), aplicáveis a instâncias Linux
  • Use o parâmetro Timeout para definir o tempo máximo de timeout para execuções de um comando em instâncias do Elastic Compute Service (ECS). Quando uma execução atinge o tempo limite, o Cloud Assistant Agent encerra o processo do comando de forma forçada ao cancelar o ID do processo (PID) do comando.
    • Para uma tarefa única, quando a execução atinge o tempo limite, o estado do comando (InvokeRecordStatus) muda para Failed.
    • Para uma tarefa agendada, observe os seguintes itens:
      • O período de timeout se aplica a cada execução.
      • Quando uma execução atinge o tempo limite, o estado (InvokeRecordStatus) do comando muda para Failed.
      • O timeout de uma execução não afeta as execuções subsequentes.
  • É possível manter de 500 a 10.000 comandos do Cloud Assistant em cada região. Consulte o tópico Visualizar e aumentar cotas de recursos ou chame a operação DescribeAccountAttribute para consultar as cotas de recursos.
  • Use WorkingDir para especificar o diretório de execução de um comando do Cloud Assistant. Para instâncias Linux, o diretório padrão de execução é o diretório home do usuário root, que é /root. Para instâncias Windows, o diretório padrão de execução é o diretório onde reside o processo do Cloud Assistant Agent, como C:\Windows\System32.
  • Ative o recurso de parâmetros personalizados em um comando do Cloud Assistant definindo EnableParameter como true. Ao definir CommandContent, use o formato {{parameter}} para definir parâmetros personalizados. Depois, quando a operação InvokeCommand for chamada, os pares chave-valor dos parâmetros personalizados serão transmitidos. Por exemplo, se um comando for echo {{name}}, o parâmetro Parameters pode ser usado para transmitir o par chave-valor <name, Jack> durante a chamada da operação InvokeCommand. A chave name do parâmetro personalizado é substituída automaticamente pelo valor correspondente Jack, gerando um novo comando. Como resultado, o comando echo Jack é realmente executado.

Depuração

O OpenAPI Explorer calcula automaticamente o valor da assinatura. Para sua conveniência, recomendamos que você chame esta operação no OpenAPI Explorer. O OpenAPI Explorer gera dinamicamente o código de exemplo da operação para diferentes SDKs.

Parâmetros da solicitação

Parâmetro

Tipo

Obrigatório

Exemplo

Descrição

Action String Yes CreateCommand

A operação que você deseja executar. Defina o valor como CreateCommand.

RegionId String Yes cn-hangzhou

O ID da região onde o comando será criado. Chame a operação DescribeRegions para consultar a lista mais recente de regiões.

Name String Yes testName

O nome do comando. O nome aceita todos os conjuntos de caracteres e pode ter até 128 caracteres.

Description String No testDescription

A descrição do comando. A descrição aceita todos os conjuntos de caracteres e pode ter até 512 caracteres.

Type String Yes RunShellScript

O tipo do comando. Valores válidos:

  • RunBatScript: comando em lote. Comandos em lote são aplicáveis a instâncias Windows.
  • RunPowerShellScript: comando PowerShell. Comandos PowerShell são aplicáveis a instâncias Windows.
  • RunShellScript: comando shell. Comandos shell são aplicáveis a instâncias Linux.
CommandContent String Yes ZWNobyAxMjM=

O conteúdo do comando codificado em Base64. Observe os seguintes itens:

  • O valor deve ser codificado em Base64 e não pode exceder 18 KB de tamanho.
  • Parâmetros personalizados podem ser adicionados ao comando. Para ativar o recurso de parâmetros personalizados, defina EnableParameter como true.
    • Os parâmetros personalizados são definidos no formato {{}}. Dentro de {{}}, os espaços e quebras de linha antes e depois dos nomes dos parâmetros são ignorados.
    • É possível especificar até 20 parâmetros personalizados.
    • O nome de um parâmetro personalizado pode conter letras, dígitos, sublinhados (_) e hifens (-). O nome não diferencia maiúsculas de minúsculas. O prefixo ACS:: não pode ser usado para especificar parâmetros de ambiente não integrados.
    • Cada nome de parâmetro personalizado não pode exceder 64 bytes de comprimento.
  • É possível especificar parâmetros de ambiente integrados como parâmetros personalizados. Nesse caso, ao executar o comando, esses parâmetros são preenchidos automaticamente pelo Cloud Assistant. As seguintes variáveis de ambiente integradas estão disponíveis:
    • {{ACS::RegionId}}: o ID da região.
    • {{ACS::AccountId}}: o UID da conta Alibaba Cloud.
    • {{ACS::InstanceId}}: o ID da instância. Quando o comando é executado em várias instâncias, para usar {{ACS::InstanceId}} como variável de ambiente integrada, a versão do Cloud Assistant Agent deve ser igual ou posterior às seguintes:
      • Linux: 2.2.3.309
      • Windows: 2.1.3.309
    • {{ACS::InstanceName}}: o nome da instância. Quando o comando é executado em várias instâncias, para usar {{ACS::InstanceName}} como variável de ambiente integrada, a versão do Cloud Assistant Agent deve ser igual ou posterior às seguintes:
      • Linux: 2.2.3.344
      • Windows: 2.1.3.344
    • {{ACS::InvokeId}}: o ID da tarefa. Para usar {{ACS::InvokeId}} como variável de ambiente integrada, a versão do Cloud Assistant Agent deve ser igual ou posterior às seguintes:
      • Linux: 2.2.3.309
      • Windows: 2.1.3.309
    • {{ACS::CommandId}}: o ID do comando. Ao chamar a operação RunCommand, para usar {{ACS::CommandId}} como variável de ambiente integrada, a versão do Cloud Assistant Agent deve ser igual ou posterior às seguintes:
      • Linux: 2.2.3.309
      • Windows: 2.1.3.309
WorkingDir String No /home/user

O caminho de execução do comando nas instâncias ECS. O valor pode ter até 200 caracteres.

Valores padrão:

  • Para instâncias Linux, o valor padrão é o diretório home do usuário root, que é o diretório /root.
  • Para instâncias Windows, o valor padrão é o diretório onde reside o processo do Cloud Assistant Agent, como C:\Windows\System32\.
Nota Se você definir WorkingDir com um valor diferente dos padrões, certifique-se de que o diretório exista na instância.
Timeout Long No 60

O tempo máximo de timeout para a execução do comando na instância. Unidade: segundos. Quando um comando criado não pode ser executado, ele atinge o tempo limite. Quando a execução de um comando atinge o tempo limite, o Cloud Assistant Agent encerra o processo do comando de forma forçada ao cancelar o PID.

Valor padrão: 60.

EnableParameter Boolean No false

Especifica se parâmetros personalizados devem ser usados no comando.

Valor padrão: false.

ContentEncoding String No PlainText

O modo de codificação do conteúdo do comando (CommandContent). Valores válidos:

  • PlainText: o conteúdo do comando não está codificado.
  • Base64: o conteúdo do comando está codificado em Base64.

Valor padrão: Base64.

Nota Se o valor especificado para este parâmetro for inválido, Base64 será usado por padrão.
ResourceGroupId String No rg-123******

O ID do grupo de recursos ao qual o comando será atribuído.

Tag.N.Key String No TestKey

A chave da tag N a ser adicionada ao comando. Valores válidos de N: 1 a 20. A chave da tag não pode ser uma string vazia.

Se uma única tag for especificada para consultar recursos, até 1.000 recursos com essa tag poderão ser exibidos na resposta. Se várias tags forem especificadas, até 1.000 recursos com todas essas tags poderão ser exibidos. Para consultar mais de 1.000 recursos com tags específicas, chame ListTagResources.

A chave da tag pode ter até 64 caracteres e não pode começar com acs: ou aliyun. Não pode conter http:// ou https://.

Tag.N.Value String No TestValue

O valor da tag N a ser adicionada ao comando. Valores válidos de N: 1 a 20. O valor da tag pode ser uma string vazia.

Pode ter até 128 caracteres e não pode conter http:// ou https://.

Parâmetros da resposta

Parâmetro

Tipo

Exemplo

Descrição

CommandId String c-7d2a745b412b4601b2d47f6a768d****

O ID do comando.

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

O ID da solicitação.

Exemplos

Solicitações de exemplo

http(s)://ecs.aliyuncs.com/?Action=CreateCommand
&CommandContent=ZWNobyB7e25hbWV9fSA=
&Name=testName
&RegionId=cn-hangzhou
&Type=RunShellScript
&Description=testDescription
&WorkingDir=/home/user
&Timeout=60
&EnableParameter=true
&ContentEncoding=Base64
&<Common request parameters>

Respostas de sucesso de exemplo

XML formato

HTTP/1.1 200 OK
Content-Type:application/xml

<CreateCommandResponse>
    <CommandId>c-7d2a745b412b4601b2d47f6a768d****</CommandId>
    <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>
</CreateCommandResponse>

JSON formato

HTTP/1.1 200 OK
Content-Type:application/json

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

Códigos de erro

Código de status HTTP

Código de erro

Mensagem de erro

Descrição

400 RegionId.ApiNotSupported The api is not supported in this region. Esta operação não pode ser executada na região especificada. Verifique se o valor do parâmetro RegionId é válido.
400 CmdParam.EmptyKey You must specify the parameter names. Alguns parâmetros obrigatórios não foram especificados.
400 CmdParam.InvalidParamName Invalid parameter name. The name can contain only lowercase letters (a to z), uppercase letters (A to Z), numbers (0 to 9), hyphens (-), and underscores (_). Nome de parâmetro personalizado inválido. Cada nome de parâmetro personalizado pode conter apenas letras, dígitos, sublinhados (_) e hifens (-).
400 CmdContent.DecodeError The CommandContent can not be base64 decoded. O conteúdo do comando não pode ser decodificado em Base64.
400 InvalidParameter.WorkingDir The specified parameter WorkingDir is not valid. Valor de WorkingDir inválido.
403 CmdContent.ExceedLimit The length of the command content exceeds the upper limit. O comprimento máximo do conteúdo do comando foi excedido.
403 CmdName.ExceedLimit The length of the command name exceeds the upper limit. O comprimento máximo do nome do comando foi excedido.
403 CmdDesc.ExceedLimit The length of the command description exceeds the upper limit. O comprimento máximo da descrição do comando foi excedido.
403 CmdCount.ExceedQuota The total number of commands in the current region exceeds the quota. O número máximo de comandos do Cloud Assistant na região atual foi excedido.
403 CmdParamCount.ExceedLimit The maximum number of custom parameters is exceeded. O número máximo de parâmetros personalizados foi excedido.
403 CmdParamName.ExceedLimit The maximum length of a parameter name is exceeded. O comprimento máximo de um nome de parâmetro personalizado foi excedido.
403 Operation.Forbidden The operation is not permitted. A operação não é suportada.
403 InvalidStatus.ResourceGroup You cannot perform an operation on a resource group that is being created or deleted. Não é possível executar esta operação em um grupo de recursos que está sendo criado ou excluído.
404 InvalidCmdType.NotFound The specified command type does not exist. O tipo de comando especificado não foi encontrado.
404 InvalidResourceGroup.NotFound The ResourceGroup provided does not exist in our records. O grupo de recursos não foi encontrado.
500 InternalError.Dispatch An error occurred when you dispatched the request. Ocorreu um erro durante o envio da solicitação. Tente novamente mais tarde.

Para obter uma lista de códigos de erro, consulte Códigos de erro do serviço.