このドキュメントは、のバージョン 1 AWS CLI のみを対象としています。のバージョン 2 に関連するマニュアルについては AWS CLI、『バージョン 2 ユーザーガイド』を参照してください。
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS CLI スケルトンと入力ファイル
ほとんどの AWS CLI コマンドは、ファイルからのすべてのパラメータ入力を受け入れます。これらのテンプレートは、generate-cli-skeleton
オプションを使用して生成できます。
AWS CLI スケルトンと入力ファイルについて
ほとんどの AWS Command Line Interface (AWS CLI) コマンドは、--cli-input-json
および パラメータを使用してファイルから入力されるパラメータのすべてを受け入れる機能をサポートしています。
これらの同じコマンドで、 JSONの形式 でファイルが生成する --generate-cli-skeleton
パラメータが用意されており、すべてのパラメータを後で編集して値を入力することができます。その後、関連する --cli-input-json
パラメータを使用してコマンドを実行し、入力済みのファイルを指定できます。
重要
一部の AWS CLI コマンド (aws s3
コマンドなど) は、個別の AWS API オペレーションに直接マッピングされません。このようなコマンドは、このトピックで説明している --generate-cli-skeleton
または --cli-input-json
パラメータもサポートしていません。特定のコマンドがこれらのパラメータをサポートしているか不明な場合は、次のコマンドを実行します。service
と command
の名前は調べたいものに置き換えてください。
$
aws service command
help
出力に、指定されたコマンドがサポートするパラメータを示す Synopsis
セクションが含まれています。
$
aws iam list-users help
... SYNOPSIS list-users ... [--cli-input-json] ... [--generate-cli-skeleton <value>] ...
--generate-cli-skeleton
パラメータを指定すると、コマンドは実行せず、パラメータテンプレートを生成して表示します。これをカスタマイズして、後でコマンドに対する入力として使用することができます。生成されるテンプレートには、そのコマンドによってサポートされているすべてのパラメータが含まれています。
--generate-cli-skeleton
パラメータには、次のいずれかの値を指定できます。
-
input
- 生成されたテンプレートには、JSON 形式の入力パラメータがすべて含まれます。これは、デフォルト値です。 -
output
- 生成されたテンプレートには、JSON 形式の出力パラメータがすべて含まれます。。
AWS CLI は基本的にサービスの API の「ラッパー」であるため、スケルトンファイルは、すべてのパラメータを、基になる API パラメータ名で参照することを想定しています。このパラメータ名は AWS CLI のものとは異なることがあります。例えば、AWS CLI という名前の user-name
パラメータは、AWS という名前の UserName
のサービスの API パラメータにマップされる場合があります (大文字小文字が変更されダッシュがないことに注意)。エラーを回避するために、--generate-cli-skeleton
オプションを使用して「正しい」パラメータ名でテンプレートを生成することをお勧めします。サービスの API リファレンスガイドを参照して、想定されるパラメータ名を確認することもできます。テンプレートから、値を指定しない必須でないパラメータを削除できます。
例えば、次のコマンドを実行すると、Amazon Elastic Compute Cloud (Amazon EC2) コマンドrun-instancesのパラメータテンプレートが生成されます 。
コマンドスケルトンを生成生成する
パラメータスケルトンファイルを生成して使用するには
-
--generate-cli-skeleton
パラメータを指定してコマンドを実行して JSON を生成し、出力を保存用ファイルに送ります。 -
テキストエディタでパラメータスケルトンファイルを開き、不要なパラメータを削除します。例えば、テンプレートを次のように削除できます。不要な要素を削除した後、ファイルがまだ有効な JSON であることを確認してください。
この例では、Amazon EC2 ドライラン機能を使用するには、
DryRun
パラメータをtrue
に設定したままにします。この機能を使用すると、実際にリソースを作成または変更することなく、コマンドを安全にテストできます。 -
残りの値には、シナリオに適した値を入力します。この例では、インスタンスタイプ、キー名、セキュリティグループ、および使用する Amazon マシンイメージ (AMI) の識別子を指定しています。この例では、デフォルトの AWS リージョンを前提としています。AMI
ami-dfc39aef
は、us-west-2
リージョンでホストされている 64 ビットの Amazon Linux イメージです。別のリージョンを使用する場合は、使用する正しい AMI ID を見つける必要があります。 -
file://
プレフィックスを使用して、完了したテンプレートファイルを--cli-input-json
パラメータに渡すことによって、入力済みパラメータでコマンドを実行します。AWS CLI はパスを現在の作業ディレクトリに対する相対パスとして解釈するため、パスを付けずにファイル名だけを表示する次の例は、現在の作業ディレクトリ内で直接検索されます。リハーサルのエラーは、JSON の形式が正しく、パラメータ値が有効であることを示します。出力でその他の問題が報告された場合は、それを修正し、「
Request would have succeeded
」というメッセージが表示されるまで前のステップを繰り返します。 -
これで、
DryRun
パラメータをfalse
に設定して、dry run を無効にできます。 -
コマンドを実行すると、
run-instances
は Amazon EC2 インスタンスを実際に起動し、正常起動によって生成された詳細を表示します。出力の形式は、入力パラメータテンプレートの形式とは別に、--output
パラメータによって制御されます。