Alibaba Cloud CLI komut parametreleri, CLI davranışını kontrol eden genel bayraklar ve alt komutlara iletilen iş parametreleri olarak sınıflandırılır. Bu konuda, kullanılabilir parametrelerin nasıl görüntüleneceği, çeşitli veri türlerindeki parametre değerlerinin nasıl biçimlendirileceği ve otomatik tamamlama özelliğinin nasıl kullanılacağı açıklanmaktadır.
Önkoşullar
Alibaba Cloud CLI 3.3.0 veya sonraki bir sürüm yüklenmiş olmalıdır. Yükleme talimatları için Alibaba Cloud CLI'yi yükleme, güncelleme ve kaldırma konusuna bakın. Mevcut sürümünüz 3.3.0'dan eskiyse geçişi tamamlamak için Eski CLI'den eklenti tabanlı CLI'ye geçiş yapma konusuna bakın.
Alibaba Cloud CLI için kimlik bilgileri yapılandırılmış olmalıdır. Yapılandırma talimatları için Kimlik bilgilerini yapılandırma ve yönetme konusuna bakın.
Parametre türleri
Bir CLI komutu; bir komuttan, bir alt komuttan ve parametrelerden oluşur:
aliyun <command> <sub-command> [parameters]
Parametreler iki türe ayrılır:
Genel bayraklar: Bölge seçimi, çıktı biçimi ve sayfalama gibi CLI'nin kendi davranışını kontrol eder. Genel bayraklar tüm komutlar için geçerlidir.
İş parametreleri: Alt komutlara iletilen istek alanlarıdır. İş parametreleri işleme göre değişir.
Aşağıdaki örnekte, --help bir genel bayraktır ve --biz-region-id bir iş parametresidir:
aliyun ecs describe-instances --help
aliyun ecs describe-instances --biz-region-id cn-hangzhou
Genel bayraklar
Aşağıdaki bayraklar bölge belirtme, sorgu sonuçlarını sayfalama ve dry-run modunu etkinleştirme dahil olmak üzere tüm eklenti komutları için geçerlidir:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
--cli-dry-run , --pager ve --quiet ile birbirini dışlar. Dry-run modu gerçek istek göndermediğinden bu bayraklar birlikte kullanılamaz.
İş parametreleri
İş parametreleri, alt komutlara iletilen istek alanlarıdır. Farklı işlemlerin farklı iş parametreleri vardır.
aliyun ecs describe-instances --biz-region-id cn-hangzhou --cli-dry-run
İş parametrelerinin veri türleri API'ler tarafından tanımlanır. Yaygın türler şunlardır:
Dize: Örnek ID'si veya adı gibi metin dizesi.
Tam sayı: Sayfa numarası veya sayaç gibi tam sayı.
Boole:
trueveyafalseBoole değeri.Dizi / JSON: Disk ID'leri listesi veya etiket nesnesi gibi dizi veya JSON nesnesi.
Parametreleri keşfetme
Bir komutun desteklediği parametreleri CLI yardım bilgilerini veya çevrimiçi OpenAPI portalını kullanarak görüntüleyebilirsiniz.
CLI yardım bilgilerini kullanma
Desteklenen tüm parametreleri ve açıklamalarını görüntülemek için bir komuta --help ekleyin. Yardım çıktısının biçimi komut türüne göre değişir.
Dahili komutlar
Dahili komutlar Alibaba Cloud CLI çekirdek programına entegre edilmiştir ve configure gibi ek eklentiler yüklenmeden doğrudan kullanılabilir. Dahili komutların yardım çıktısı alt komutları veya belirli seçenekleri gösterir:
aliyun configure --help
Yardım çıktısı:
configure credential and settings
Usage:
aliyun configure --mode {AK|RamRoleArn|EcsRamRole|OIDC|External|CredentialsURI|ChainableRamRoleArn|CloudSSO|OAuth} --profile <profileName> [--config-path <configPath>]
Commands:
get print configuration values
set set config in non interactive mode
list list all config profile
delete delete the specified profile
switch switch default profile
safety-policy manage safety policy and human-in-the-loop rules
ai-mode manage global AI mode and User-Agent for API calls
plugin-settings manage global plugin system settings
Eklenti komutları
Cloud hizmet eklenti komutlarının yardım çıktısı, parametre türleri ve varsayılan değerler dahil olmak üzere parametre adlarını kebab-case biçiminde görüntüler:
aliyun ecs describe-instances --help
Yardım çıktısı:
Description: Queries a list of instances and their details based on specified conditions
API Version: 2014-05-26
Usage:
aliyun ecs describe-instances [parameters]
Parameters:
--biz-region-id string (required), The ID of the region where the
instance resides. You can call https://help.aliyun.
com/document_detail/25609.html to query the latest
list of Alibaba Cloud regions
--additional-attributes list, The list of other instance attributes
format: --additional-attributes value1 value2 value3
--device-available bool, > This parameter is in invitational preview
and is not available for use
......
Global Flags:
--cli-ai-mode bool, For this run, enable AI-mode
--cli-dry-run bool, Enable dry-run mode: print request details
without sending the actual API call
--cli-query string, Use `--cli-query <jmespath>` to filter
output with JMESPath expression
--endpoint string, Override service endpoint (e.g., --endpoint
https://ecs.cn-hangzhou.aliyuncs.com)
......
Examples:
aliyun ecs describe-instances --biz-region-id example-value
aliyun ecs describe-instances --biz-region-id example-value --vpc-id example-value
OpenAPI portalını kullanma
Alibaba Cloud OpenAPI portalı, API'leri çevrimiçi olarak hata ayıklamanıza olanak tanır ve otomatik olarak CLI komut örnekleri oluşturur. Daha fazla bilgi için OpenAPI Explorer ile CLI komutları oluşturma ve çalıştırma konusuna bakın.
Parametre değerleri
Parametre değerlerini iletme yöntemi, veri türüne ve işletim sistemi ortamına göre değişir.
Yaygın tür parametre değerleri
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Farklı işletim sistemleri ve terminal ortamları tırnak işaretlerini farklı şekilde işler. Özel karakter içeren parametre değerlerini iletirken aşağıdaki tırnak kurallarını kullanın:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
JSON parametre değerleri
Bazı komut parametreleri JSON biçiminde değerler gerektirir. Dış tırnak ve iç tırnak seçimi işletim sistemine göre değişir.
JSON dizileri
-
Linux / macOS: Dış katman için tek tırnak, iç değerler için çift tırnak kullanın.
aliyun ecs describe-disks --disk-ids '["d-bp1****","d-bp2****","d-bp3****"]' --biz-region-id cn-hangzhou -
Windows (Komut İstemi ve PowerShell): Dış katman için çift tırnak, iç değerler için tek tırnak kullanın.
aliyun ecs describe-disks --disk-ids "['d-bp1****','d-bp2****','d-bp3****']" --biz-region-id cn-hangzhou
JSON nesneleri
Bir parametre değeri JSON nesnesi olduğunda, her JSON nesnesini süslü parantez {} içine alın ve anahtarlarla değerleri iki nokta üst üste : ile ayırın.
-
Linux / macOS:
aliyun slb add-backend-servers --load-balancer-id lb-bp1**** --backend-servers '[{"ServerId":"i-bp1****"},{"ServerId":"i-bp2****"}]' -
Windows (Komut İstemi ve PowerShell):
aliyun slb add-backend-servers --load-balancer-id lb-bp1**** --backend-servers "[{'ServerId':'i-bp1****'},{'ServerId':'i-bp2****'}]"
Özel karakter içeren değerler
Tire (-) ile başlayan değerler
Bir parametre değeri - ile başladığında, CLI bunu başka bir parametre adı olarak yanlış yorumlayabilir:
aliyun ecs AuthorizeSecurityGroup --SecurityGroupId 'sg-bp67acfmxazb4p****' --Permissions.1.PortRange "-1/-1" --method POST --force
Bu sorunu çözmek için parametre adı ve değerini bağlamak amacıyla eşittir işareti kullanın:
aliyun ecs AuthorizeSecurityGroup --SecurityGroupId 'sg-bp67acfmxazb4p****' --Permissions.1.PortRange=-1/-1 --method POST --force
Kabuk özel karakterleri
Parametre değerleri kabuk özel karakterleri ($, , \, boşluk vb.) içerdiğinde bunları tırnak işaretleri içine almanız gerekir. Linux / macOS'ta kabuğun özel karakterleri yorumlamasını önlemek için tek tırnak kullanın. Windows Komut İstemi'nde çift tırnak kullanın.
# Linux/macOS/PowerShell
aliyun ecs describe-images --image-name 'Example Image'
# Windows CMD
aliyun ecs describe-images --image-name "Example Image"
# Linux/macOS
aliyun xxx --param '$literal_dollar'
Parametre değerlerini dosyadan yükleme
Sertifika veya büyük bir JSON yükü gibi bir parametre değeri uzun olduğunda, değeri yerel bir dosyadan yüklemek daha kolaydır.
--body-file (RESTful API çağrıları)
RESTful API çağrılarında, HTTP istek gövdesini yerel bir dosyadan yüklemek için --body-file kullanın.
aliyun cs PUT /clusters/c1234****/nodepools/np5678**** --body-file request.json
Kabuk komut ikamesi ve here-doc
Dosya içeriğini --body parametresine iletmek için kabuk komut ikamesini ($(cat ...)) veya here-doc'u da kullanabilirsiniz:
# Command substitution
aliyun cs PUT /clusters/c1234****/nodepools/np5678**** --body "$(cat request.json)"
# Here-doc (suitable for constructing inline JSON in scripts)
aliyun cs PUT /clusters/c1234****/nodepools/np5678**** --body "$(cat <<EOF
{
"nodepool_info": {
"name": "default-nodepool",
"resource_group_id": "rg-acfmyvw****"
}
}
EOF
)"
Kabuk komut ikamesi ve here-doc yalnızca bash veya zsh ortamları için geçerlidir. Windows ortamları için --body-file kullanın.
Komut otomatik tamamlama
Alibaba Cloud CLI komut otomatik tamamlamayı destekler. Bu özelliği etkinleştirdikten sonra ürün adlarını, işlem adlarını ve parametre adlarını otomatik tamamlamak için Tab tuşuna basabilirsiniz.
Otomatik tamamlama yalnızca Linux ve macOS sistemlerinde bash veya zsh ortamlarında desteklenir. Otomatik tamamlama ürün adlarını, işlem adlarını ve parametre adlarını kapsar ancak parametre değerlerini kapsamaz.
Otomatik tamamlamayı etkinleştirmek için aşağıdaki komutu çalıştırın:
aliyun auto-completion
Otomatik tamamlamayı etkinleştirdikten sonra yapılandırmayı hemen uygulamak veya terminali yeniden başlatmak için aşağıdaki komutu çalıştırın:
# bash
source ~/.bash_profile
# zsh
source ~/.zshrc
Otomatik tamamlamanın çalıştığını doğrulamak için aliyun yazın ve Tab tuşuna basın. Aday komutların bir listesi (örneğin configure) görünüyorsa otomatik tamamlama etkinleştirilmiştir.
Otomatik tamamlamayı devre dışı bırakmak için şunu çalıştırın:
aliyun auto-completion --uninstall
SSS
--help bir parametreyi Optional olarak gösteriyor. Her zaman atlayabilir miyim?
Her zaman değil. Bazı komutlarda birbirini dışlayan parametreler bulunur; yani birini veya diğerini belirtmeniz gerekir. Bu tür parametreler ayrı ayrı isteğe bağlı olarak işaretlenir ancak en azından birinin belirtilmesi gerekir. Aksi takdirde bir hata döndürülür. Belirli gereksinim kuralları için ilgili ürünün API belgelerine bakın.