All Products
Search
Document Center

Elastic Compute Service:CreateCommand

Last Updated:Sep 22, 2026

Membuat perintah Asisten Cloud tipe skrip Shell, PowerShell, atau Bat.

Deskripsi operasi

Deskripsi operasi

  • Anda dapat membuat tipe perintah berikut:
    • Skrip Bat untuk instans Windows (RunBatScript).

    • Skrip PowerShell untuk instans Windows (RunPowerShellScript).

    • Skrip Shell untuk instans Linux (RunShellScript).

  • Anda dapat menentukan parameter Timeout untuk mengatur periode batas waktu maksimum eksekusi perintah pada instans ECS. Jika perintah mencapai batas waktu, Agen Asisten Cloud akan menghentikan proses perintah secara paksa dengan membatalkan PID perintah.
    • Untuk eksekusi satu kali, setelah perintah mencapai batas waktu, status eksekusi (InvokeRecordStatus) perintah pada instans ECS yang ditentukan berubah menjadi Failed.

    • Untuk eksekusi terjadwal:
      • Periode batas waktu berlaku untuk setiap catatan eksekusi.

      • Setelah eksekusi tertentu mencapai batas waktu, status (InvokeRecordStatus) catatan eksekusi berubah menjadi Failed.

      • Batas waktu eksekusi sebelumnya tidak memengaruhi eksekusi berikutnya.

  • Anda dapat menyimpan hingga 500 hingga 50.000 perintah Asisten Cloud di satu wilayah. Anda juga dapat meminta peningkatan kuota. Untuk informasi tentang cara mengkueri dan meningkatkan kuota, lihat Manajemen Kuota.

  • Anda dapat menentukan parameter WorkingDir untuk mengatur jalur eksekusi perintah. Untuk instans Linux, jalur default adalah direktori home pengguna root, yaitu /root. Untuk instans Windows, jalur default adalah direktori tempat proses Agen Asisten Cloud berada, seperti C:\Windows\System32.

  • Anda dapat menentukan EnableParameter=true untuk mengaktifkan fitur parameter kustom. Saat Anda mengatur CommandContent, Anda dapat menentukan parameter kustom dalam format {{parameter}} dan meneruskan pasangan kunci-nilai parameter kustom saat menjalankan perintah dengan memanggil InvokeCommand. Misalnya, jika Anda membuat perintah echo {{name}} dan meneruskan pasangan kunci-nilai <name, Jack> menggunakan parameter Parameters saat memanggil InvokeCommand, parameter kustom akan diganti secara otomatis. Perintah baru echo Jack akan dibuat dan dijalankan pada instans.

Coba sekarang

Coba API ini di OpenAPI Explorer tanpa perlu penandatanganan manual. Panggilan yang berhasil akan secara otomatis menghasilkan contoh kode SDK sesuai dengan parameter Anda. Unduh kode tersebut dengan kredensial bawaan yang aman untuk penggunaan lokal.

Test

RAM authorization

Tabel berikut menjelaskan otorisasi yang diperlukan untuk memanggil API ini. Anda dapat menentukannya dalam kebijakan Resource Access Management (RAM). Kolom pada tabel dijelaskan sebagai berikut:

  • Action: Aksi yang dapat digunakan dalam elemen Action pada pernyataan kebijakan izin RAM untuk memberikan izin guna melakukan operasi tersebut.

  • API: API yang dapat Anda panggil untuk melakukan aksi tersebut.

  • Access level: Tingkat akses yang telah ditentukan untuk setiap API. Nilai yang valid: create, list, get, update, dan delete.

  • Resource type: Jenis resource yang mendukung otorisasi untuk melakukan aksi tersebut. Ini menunjukkan apakah aksi tersebut mendukung izin tingkat resource. Resource yang ditentukan harus kompatibel dengan aksi tersebut. Jika tidak, kebijakan tersebut tidak akan berlaku.

    • Untuk API dengan izin tingkat resource, jenis resource yang diperlukan ditandai dengan tanda bintang (*). Tentukan Nama Sumber Daya Alibaba Cloud (ARN) yang sesuai dalam elemen Resource pada kebijakan.

    • Untuk API tanpa izin tingkat resource, ditampilkan sebagai All Resources. Gunakan tanda bintang (*) dalam elemen Resource pada kebijakan.

  • Condition key: Kunci kondisi yang didefinisikan oleh layanan. Kunci ini memungkinkan kontrol granular, berlaku baik hanya untuk aksi maupun untuk aksi yang terkait dengan resource tertentu. Selain kunci kondisi spesifik layanan, Alibaba Cloud menyediakan serangkaian common condition keys yang berlaku di semua layanan yang didukung RAM.

  • Dependent action: Aksi dependen yang diperlukan untuk menjalankan aksi tersebut. Untuk menyelesaikan aksi tersebut, pengguna RAM atau role RAM harus memiliki izin untuk melakukan semua aksi dependen.

Action

Access level

Resource type

Condition key

Dependent action

ecs:CreateCommand

create

*Command.

acs:ecs:{#regionId}:{#accountId}:command/*

None None

Parameter permintaan

Parameter

Type

Required

Description

Example

RegionId

string

Yes

ID wilayah. Anda dapat memanggil DescribeRegions untuk mengkueri daftar wilayah terbaru.

cn-hangzhou

Name

string

Yes

Nama perintah. Semua set karakter didukung. Nama dapat memiliki panjang hingga 128 karakter.

testName

Description

string

No

Deskripsi perintah. Semua set karakter didukung. Deskripsi dapat memiliki panjang hingga 512 karakter.

deskripsiUji

Type

string

Yes

Tipe perintah. Nilai valid:

  • RunBatScript: Membuat skrip Bat untuk dijalankan pada instans Windows.

  • RunPowerShellScript: Membuat skrip PowerShell untuk dijalankan pada instans Windows.

  • RunShellScript: Membuat skrip Shell untuk dijalankan pada instans Linux.

RunShellScript

CommandContent

string

Yes

Konten perintah yang dienkode Base64.

  • Nilai parameter ini harus dienkode Base64 dan ukurannya tidak boleh melebihi 24 KB setelah pengodean.

  • Konten perintah mendukung parameter kustom. Untuk mengaktifkan fitur parameter kustom, tentukan EnableParameter=true:

    • Parameter kustom ditentukan dengan mengapit nama parameter dalam {{}}. Spasi dan baris baru sebelum dan setelah nama parameter dalam {{}} akan diabaikan.

    • Jumlah parameter kustom tidak boleh melebihi 20.

    • Nama parameter kustom dapat berisi huruf (a-z, A-Z), angka (0-9), tanda hubung (-), dan garis bawah (_). Awalan acs:: untuk menentukan parameter lingkungan non-bawaan tidak didukung. Karakter lain tidak didukung. Nama parameter tidak peka huruf besar-kecil.

    • Setiap nama parameter dapat memiliki panjang hingga 64 byte.

  • Anda dapat menentukan parameter lingkungan bawaan sebagai parameter kustom. Saat perintah dijalankan, Asisten Cloud secara otomatis mengganti parameter dengan nilai yang sesuai dari lingkungan. Parameter lingkungan bawaan berikut didukung:

    • {{ACS::RegionId}}: ID wilayah.

    • {{ACS::AccountId}}: UID akun Alibaba Cloud.

    • {{ACS::InstanceId}}: ID instans. Saat perintah dikirim ke beberapa instans dan Anda ingin menggunakan {{ACS::InstanceId}} sebagai parameter lingkungan bawaan, pastikan Agen Asisten Cloud tidak lebih lama dari versi berikut:

      • Linux: 2.2.3.309

      • Windows: 2.1.3.309

    • {{ACS::InstanceName}}: Nama instans. Saat perintah dikirim ke beberapa instans dan Anda ingin menggunakan {{ACS::InstanceName}} sebagai parameter lingkungan bawaan, pastikan Agen Asisten Cloud tidak lebih lama dari versi berikut:

      • Linux: 2.2.3.344

      • Windows: 2.1.3.344

    • {{ACS::InvokeId}}: ID eksekusi perintah. Untuk menggunakan {{ACS::InvokeId}} sebagai parameter lingkungan bawaan, pastikan Agen Asisten Cloud tidak lebih lama dari versi berikut:

      • Linux: 2.2.3.309

      • Windows: 2.1.3.309

    • {{ACS::CommandId}}: ID perintah. Saat Anda menjalankan perintah dengan memanggil RunCommand dan ingin menggunakan {{ACS::CommandId}} sebagai parameter lingkungan bawaan, pastikan Agen Asisten Cloud tidak lebih lama dari versi berikut:

      • Linux: 2.2.3.309

      • Windows: 2.1.3.309

ZWNobyAxMjM=

WorkingDir

string

No

Direktori tempat perintah dijalankan pada instans ECS. Direktori dapat memiliki panjang hingga 200 karakter.

Nilai default:

  • Instans Linux: direktori home pengguna root, yaitu /root.

  • Instans Windows: direktori tempat proses Agen Asisten Cloud berada, seperti C:\Windows\System32.

Catatan

Jika Anda mengatur parameter ini ke direktori yang berbeda, pastikan direktori tersebut ada pada instans.

/home/user

Timeout

integer

No

Periode batas waktu maksimum untuk eksekusi perintah pada instans ECS. Unit: detik. Jika perintah tidak dapat dijalankan karena alasan tertentu, batas waktu akan tercapai. Setelah batas waktu tercapai, proses perintah dihentikan secara paksa dengan membatalkan PID perintah.

Nilai default: 60.

60

EnableParameter

boolean

No

Apakah akan menggunakan parameter kustom pada perintah.

Nilai default: false.

false

ContentEncoding

string

No

Mode pengodean konten perintah (CommandContent). Nilai valid:

  • PlainText: tanpa pengodean. Konten ditransmisikan dalam teks biasa.

  • Base64: pengodean Base64.

Nilai default: Base64.

Catatan

Jika nilai tidak valid ditentukan, nilai tersebut akan diperlakukan sebagai Base64.

PlainText

ClientToken

string

No

Token klien yang digunakan untuk memastikan idempotensi permintaan. Anda dapat menggunakan klien untuk menghasilkan token, tetapi pastikan token tersebut unik di antara permintaan yang berbeda. ClientToken hanya mendukung karakter ASCII dan tidak boleh melebihi panjang 64 karakter. Untuk informasi selengkapnya, lihat Cara memastikan idempotensi.

123e4567-e89b-12d3-a456-426655440000

ResourceGroupId

string

No

ID kelompok sumber daya tempat perintah berada.

rg-123******

Launcher

string

No

Program bootstrap untuk eksekusi skrip. Nilai tidak boleh melebihi panjang 1 KB.

python3 -u {{ACS::ScriptFileName|Ext(".py")}}

Tag

array<object>

No

Tag.

object

No

Tag.

Key

string

No

Kunci tag perintah. Nilai valid N: 1 hingga 20. Kunci tag tidak boleh berupa string kosong.

Jika Anda menggunakan satu tag untuk memfilter sumber daya, jumlah sumber daya dengan tag yang ditentukan tidak boleh melebihi 1.000. Jika Anda menggunakan beberapa tag untuk memfilter sumber daya, jumlah sumber daya yang dilampirkan dengan semua tag yang ditentukan tidak boleh melebihi 1.000. Jika jumlah sumber daya melebihi 1.000, panggil ListTagResources untuk mengkueri sumber daya.

Kunci tag dapat memiliki panjang hingga 64 karakter dan tidak boleh diawali dengan aliyun atau acs:. Kunci tag tidak boleh mengandung http:// atau https://.

TestKey

Value

string

No

Nilai tag perintah. Nilai valid N: 1 hingga 20. Nilai tag dapat berupa string kosong.

Nilai tag dapat memiliki panjang hingga 128 karakter dan tidak boleh mengandung http:// atau https://.

TestValue

Elemen respons

Element

Type

Description

Example

object

CommandId

string

ID perintah.

c-7d2a745b412b4601b2d47f6a768d****

RequestId

string

ID permintaan.

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

Contoh

Respons sukses

JSONformat

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

Kode kesalahan

HTTP status code

Error code

Error message

Description

400 RegionId.ApiNotSupported The api is not supported in this region. Pemanggilan API tidak didukung di wilayah tertentu. Periksa apakah nilai parameter RegionId benar.
400 CmdParam.EmptyKey You must specify the parameter names.
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 (_).
400 CmdContent.DecodeError The CommandContent can not be base64 decoded. Nilai parameter CommandContent tertentu tidak dapat didekode Base64. Periksa apakah nilai parameter benar.
400 InvalidParameter.WorkingDir The specified parameter WorkingDir is not valid. Parameter WorkingDir yang ditentukan tidak valid.
400 InvalidClientToken.Malformed The specified parameter clientToken is not valid. Parameter idempoten yang ditentukan tidak valid.
500 InternalError.Dispatch An error occurred when you dispatched the request. Terjadi kesalahan saat mengirim permintaan. Coba lagi nanti.
403 InvalidParameterCharacter The specified parameter %s contains illegal characters.
403 CmdContent.ExceedLimit The length of the command content exceeds the upper limit. Konten perintah Anda terlalu panjang. Sederhanakan konten perintah Anda.
403 CmdName.ExceedLimit The length of the command name exceeds the upper limit. Panjang nama perintah melebihi batas maksimum.
403 CmdDesc.ExceedLimit The length of the command description exceeds the upper limit. Panjang deskripsi perintah melebihi batas atas.
403 CmdCount.ExceedQuota The total number of commands in the current region exceeds the quota. Jumlah perintah Asisten Cloud di wilayah saat ini telah melebihi batas.
403 CmdParamCount.ExceedLimit The maximum number of custom parameters is exceeded. Jumlah parameter kustom dalam konten perintah melebihi batas atas.
403 CmdParamName.ExceedLimit The maximum length of a parameter name is exceeded. Nama parameter kustom Anda melebihi batas panjang.
403 Operation.Forbidden The operation is not permitted. Operasi tidak diizinkan.
403 InvalidStatus.ResourceGroup You cannot perform an operation on a resource group that is being created or deleted. Operasi tidak diizinkan saat kelompok sumber daya sedang dibuat atau dihapus.
403 InvalidParameterCharacter.CommandName The command Name contains illegal characters. Nama perintah berisi karakter yang tidak valid.
403 InvalidParameterCharacter.CommandDescription The command Description contains illegal characters. Deskripsi perintah berisi karakter yang tidak valid.
403 InvalidParameterCharacter.CommandWorkingDir The command WorkingDir contains illegal characters. Jalur eksekusi perintah berisi karakter yang tidak valid.
403 InvalidLauncher.LengthLimitExceeded The length of the parameter Launcher exceeds the limit of 1 KB characters. Panjang parameter Launcher melebihi batas 1 KB.
403 InvalidTimeout.ExceedLimit The specified parameter Timeout exceeds the upper limit.
403 IdempotentParameterMismatch The specified parameter has changed while using an already used clientToken. Parameter permintaan tidak cocok dengan permintaan yang memiliki ClientToken yang sama.
403 IdempotentProcessing The previous idempotent request(s) is still processing. Permintaan idempoten sebelumnya masih diproses. Coba lagi nanti.
404 InvalidCmdType.NotFound The specified command type does not exist.
404 InvalidRegionId.NotFound The RegionId provided does not exist in our records. RegionId yang ditentukan tidak ada. Periksa apakah produk tersedia di wilayah ini.
404 InvalidResourceGroup.NotFound The ResourceGroup provided does not exist in our records. Kelompok sumber daya tidak ditemukan dalam catatan.

Lihat Error Codes untuk daftar lengkap.

Catatan rilis

Lihat Release Notes untuk daftar lengkap.