

# AWS Command Line Interface とはどのようなものですか。
<a name="cli-chap-welcome"></a>

AWS Command Line Interface (AWS CLI) は、コマンドラインシェルでコマンドを使用して AWS サービスとやり取りするためのオープンソースツールです。AWS CLI を使用すると、最小限の設定で、任意のターミナルプログラムのコマンドプロンプトから、ブラウザベースの AWS マネジメントコンソール で提供される機能と同等の機能を実装するコマンドを実行できます。
+ **Linux シェル ** - Linux または macOS でコマンドを実行するには [https://www.gnu.org/software/bash/](https://www.gnu.org/software/bash/)、[http://www.zsh.org/](http://www.zsh.org/)、[https://www.tcsh.org/](https://www.tcsh.org/) などの一般的なシェルプログラムを使用します。
+ **Windows コマンドライン ** - Windows では、Windows コマンドプロンプトまたは PowerShell でコマンドを実行します。
+ **リモート** – PuTTY や SSH などのリモートターミナルプログラム、または AWS Systems Manager を使用して Amazon Elastic Compute Cloud (Amazon EC2) インスタンスでコマンドを実行します。

AWS マネジメントコンソール で使用できるすべての IaaS (infrastructure as a Service) AWS のアドミン、管理、およびアクセス機能は、AWS の API と AWS CLI でも使用できます。AWS で使用できる AWS マネジメントコンソール IaaS の新しい機能およびサービスは、開始時、または開始から 180 日以内に、API と CLI からも使用できます。

AWS CLI では、AWS のサービスのパブリック API に直接アクセスできます。AWS CLI を使用してサービスの機能を調べ、シェルスクリプトを開発してリソースを管理できます。低レベルの同等の API コマンドに加えて、複数の AWS サービスでは AWS CLI のカスタマイズを提供します。カスタマイズには、複雑な API によるサービスの使用を簡略化する高レベルのコマンドが含まれます。

## AWS CLI バージョン 2 について
<a name="welcome-versions-v2"></a>

AWS CLI バージョン 2 は、AWS CLI の最新メジャーバージョンであり、最新機能をすべてサポートしています。バージョン 2 で導入された一部の機能は、バージョン 1 との下位互換性がないため、これらの機能にアクセスするには、アップグレードする必要があります。バージョン 1 には、スクリプトを変更することが必要となる場合がある「互換性を損なう」変更があります。バージョン 2 の変更点の一覧については、「[AWS CLI バージョン 2 の移行ガイド](cliv2-migration.md)」をご参照ください。

AWS CLI バージョン 2 は、バンドルされたインストーラとしてのみインストールできます。パッケージマネージャーに含まれている場合もありますが、これらは AWS によって作成または管理されていないサポート対象外の非公式パッケージです。このガイドに記載されている公式の AWS CLI ディストリビューションポイントからのみ AWS をインストールすることを推奨します。

AWS CLI バージョン 2 をインストールするには、「[AWS CLI の最新バージョンのインストールまたは更新](getting-started-install.md)」を参照してください。

現在インストールされているバージョンを確認するには、以下のコマンドを使用します。

```
$ aws --version
aws-cli/2.27.41 Python/3.11.6 Linux/5.10.205-195.807.amzn2.x86_64 botocore/1.18.6
```

バージョン履歴については、*GitHub* の [AWS CLI バージョン 2 の更新履歴](https://raw.githubusercontent.com/aws/aws-cli/v2/CHANGELOG.rst)を参照してください。

## SDK メジャーバージョンのメンテナンスとサポート
<a name="sdks-major-versions-maintenance-support"></a>

SDK メジャーバージョンのメンテナンスとサポート、およびその基になる依存関係については、「[AWS SDK とツールのリファレンスガイド](https://docs.aws.amazon.com/sdkref/latest/guide/overview.html)」で以下を参照してください。
+ [AWS SDK とツールのメンテナンスポリシー](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html)
+ [AWS SDK とツールのバージョンサポートマトリクス](https://docs.aws.amazon.com/sdkref/latest/guide/version-support-matrix.html)

## アマゾン ウェブ サービスについて
<a name="about-aws"></a>

アマゾン ウェブ サービス (AWS) は、デベロッパーがアプリケーションの開発時に利用できるデジタルインフラストラクチャサービスの集合体です。サービスには、コンピューティング、ストレージ、データベース、およびアプリケーション同期 (メッセージングとキューイング) などがあります。AWS では従量制サービスモデルが採用されています。料金が発生するのは、ユーザー（すなわちユーザのアプリケーション）が実際に使用したサービスの分のみです。また、AWS をプロトタイピングと実験用のプラットフォームとして利用しやすくするため、AWS には無料利用枠も用意されています。この枠では、サービスを利用しても一定のレベル以下であれば無料です。AWS のコストと無料利用枠の詳細については、「[AWS 無料利用枠の使用](https://aws.amazon.com/free/)」を参照してください。AWS アカウントを取得するには、[AWS のホームページ](https://aws.amazon.com/)を開き、**[AWS アカウントの作成]** を選択します。

# About the examples in the AWS CLI User Guide
<a name="welcome-examples"></a>

本ガイドの AWS Command Line Interface (AWS CLI) 例は、以下の規則を使用してフォーマットされています。
+ **プロンプト** – コマンドプロンプトは Linux プロンプトを使用し、(`$ `) として表示されます。Windows 固有のコマンドの場合、`C:\>` がプロンプトとして使用されます。コマンドを入力した場合はプロンプトを含めないでください。
+ **ディレクトリ** – 特定のディレクトリからコマンドを実行する必要がある場合は、プロンプト記号の前にディレクトリ名が表示されます。
+ **ユーザー入力** – コマンドラインに入力するコマンドテキストは、**user input** としてフォーマットされます。
+ **置き換え可能なテキスト** – 選択したリソースの名前、またはコマンドに含める必要のある AWS のサービスによって生成された ID を含む変更可能なテキストで、*replaceable text* としてフォーマットされます。複数行のコマンドまたは特定のキーボード入力が必要なコマンドの場合、キーボードコマンドも置き換え可能なテキストとして表示できます。
+ **出力** – AWS のサービスによって返される出力はユーザー入力の下に表示され、`computer output` としてフォーマットされます。

以下の **aws configure** コマンド例は、ユーザー入力、置き換え可能なテキスト、および出力を表しています。

1. コマンドラインに **aws configure** を入力し、**Enter** キーを押します。

1. AWS CLI はテキスト行を出力し、追加情報の入力を求めるプロンプトを表示します。

1. 各アクセスキーを順に入力して、[**Enter**] キーを押します。

1. その後、表示されている形式で AWS リージョン名を入力して **Enter** キーを押し、最後に **Enter** キーをもう一度押して出力形式の設定をスキップします。

1. 最後の **Enter** コマンドは、その行にユーザー入力がないため、置き換え可能なテキストとして表示されます。

   ```
   $ aws configure
   AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE
   AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
   Default region name [None]: us-west-2
   Default output format [None]: ENTER
   ```

次の例は、簡単なコマンドと出力を示しています。この例を使用するには、コマンドのフルテキスト (プロンプトの後の強調表示されたテキスト) を入力し、**Enter** キーを押します。セキュリティグループ名 *`my-sg`* は、目的のセキュリティグループ名に置き換えることができます。JSON ドキュメントは中括弧を含めて出力です。CLI を TEXT または TABLE 形式で出力するように設定した場合、出力は異なる形式になります。[JSON](https://json.org) がデフォルトの出力形式です。

```
$ aws ec2 create-security-group --group-name my-sg --description "My security group"
{
    "GroupId": "sg-903004f8"
}
```

# AWS CLI に関する追加のドキュメントとリソース
<a name="welcome-resources"></a>

## AWS CLI ドキュメントとリソース
<a name="welcome-resources-cli"></a>

AWS CLI を使用する際、本ユーザーガイドに加えて、以下のオンラインリソースも役に立ちます。
+ [AWS CLI バージョン 2 リファレンスガイド](https://docs.aws.amazon.com/cli/latest/reference/index.html)
+ [AWS CLI Bash スクリプティングコード例リポジトリ](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/aws-cli)。オープンソースの bash スクリプティングの例。Bash スクリプトのサンプルは *GitHub* の [AWS コード例リポジトリ](https://github.com/awsdocs/aws-doc-sdk-examples)でホストされています。
+ [AWS CLI GitHub リポジトリ](https://github.com/aws/aws-cli)。*GitHub* の AWS CLI に対してソースコードを表示し、フォークすることができます。*GitHub* のユーザーコミュニティに参加して、フィードバックの提供、機能のリクエスト、および独自の貢献を行ってください。これには、AWS CLI ドキュメントのコマンド例の表示と提供が含まれます。
+ [AWS CLI エイリアス例リポジトリ](https://github.com/awslabs/awscli-aliases) *GitHub* で AWS CLI エイリアスの例を表示し、フォークすることができます。
+ <a name="latest-guide"></a>[AWS CLI version 2 Changelog](https://github.com/aws/aws-cli/blob/v2/CHANGELOG.rst?plain=1)

## その他の AWS SDK とツール
<a name="welcome-resources-sdk"></a>

ユースケースによっては、AWS SDK のいずれか、またはニーズにより適合するツールを使用することをお勧めします。
+ [AWSSDK とツールのリファレンスガイド](https://docs.aws.amazon.com/sdkref/latest/guide/)
+ [AWS SDK for C\$1\$1](https://docs.aws.amazon.com/sdk-for-cpp)
+ [AWS SDK for Go](https://docs.aws.amazon.com/sdk-for-go/api/)
+ [AWS SDK for Java](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/)
+ [AWS SDK for JavaScript](https://docs.aws.amazon.com/sdk-for-javascript/latest/developer-guide/)
+ [AWS SDK for Kotlin](https://docs.aws.amazon.com/sdk-for-kotlin)
+ [AWS SDK for .NET](https://docs.aws.amazon.com/sdk-for-net/latest/developer-guide/)
+ [AWS SDK for Python (Boto)](https://boto3.amazonaws.com/v1/documentation/api/latest/index.html)
+ [AWS SDK for PHP](https://docs.aws.amazon.com/sdk-for-php/latest/developer-guide/)
+ [AWS Tools for PowerShell](https://docs.aws.amazon.com/powershell/latest/userguide/)
+ [AWS SDK for Ruby](https://docs.aws.amazon.com/sdk-for-ruby/latest/developer-guide/)
+ [AWS SDK for Rust](https://docs.aws.amazon.com/sdk-for-rust)
+ [AWS SDK for SAP ABAP](https://docs.aws.amazon.com/sdk-for-sapabap)
+ [AWS SDK for Swift](https://docs.aws.amazon.com/sdk-for-swift)
+ [AWS Amplify](https://docs.amplify.aws/swift/)