翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
エイリアスと呼ばれる AWS CLI コマンドショートカットを作成して使用する
エイリアスは、頻繁に使用するコマンドやスクリプトを短縮するために AWS Command Line Interface (AWS CLI) で作成できるショートカットです。設定フォルダにある alias
ファイルにエイリアスを作成します。
前提条件
エイリアスコマンドを使用するには、以下を完了する必要があります。
AWS CLIをインストールして設定します。詳細については、「AWS CLIの最新バージョンのインストールまたは更新」および「認証とアクセス認証情報」を参照してください。
-
1.11.24 または 2.0.0 の最小 AWS CLI バージョンを使用します。
-
(オプション) AWS CLI エイリアス bash スクリプトを使用するには、bash 互換ターミナルを使用する必要があります。
ステップ 1: エイリアスファイルを作成する
alias
ファイルを作成するには、ファイルナビゲーションとテキストエディタを使用するか、 step-by-step プロシージャを使用して任意のターミナルを使用できます。エイリアスファイルをすばやく作成するには、次のコマンドブロックを使用します。
エイリアスファイルを作成するには
-
AWS CLI 設定フォルダに という名前
cli
のフォルダを作成します。デフォルトでは、構成フォルダは Linux または macOS では「~/.aws/
」、Windows 上は「%USERPROFILE%\.aws\
」にあります。これは、ファイルナビゲーションまたは次のコマンドを使用して作成できます。作成されるフォルダ「
cli
」のデフォルトパスは、Linux または macOS では「~/.aws/cli/
」、Windows では「%USERPROFILE%\.aws\cli
」上にあります。 -
cli
フォルダで、拡張子なしのalias
という名前のテキストファイルを作成し、最初の行に[toplevel]
を追加します。任意のテキストエディタを使用してこのファイルを作成するか、次のコマンドを使用できます。
ステップ 2: エイリアスを作成する
エイリアスは、基本的なコマンドまたは bash スクリプトを使用して作成できます。
基本的なコマンドエイリアスの作成
前の手順で作成した alias
ファイルで、次の構文を使用してコマンドを追加することにより、エイリアスを作成できます。
[Syntax (構文)]
[
aliasname
=command
--options
]
- aliasname
はエイリアスと呼ばれるものです。- command
は呼び出したいコマンドで、他のエイリアスを含めることができます。エイリアスにオプションやパラメータを含めたり、エイリアスを呼び出すときに追加したりできます。
次の例では、aws sts
get-caller-identity
aws whoami
」という名前のエイリアスを作成します。このエイリアスは既存の AWS CLI
コマンドを呼び出すことから、aws
プレフィックスなしでコマンドを記述できます。
whoami = sts get-caller-identity
次の例は、前の whoami
の例を用いて、Account
フィルターオプションと output
テキストオプションを追加します。
whoami2 = sts get-caller-identity --query
Account
--output text
サブコマンドエイリアスの作成
注記
サブコマンドエイリアス機能には、1.11.24 または 2.0.0 の最小 AWS CLI バージョンが必要です
前の手順で作成した alias
ファイルで、次の構文を使用してコマンドを追加することにより、サブコマンドのエイリアスを作成できます。
[Syntax (構文)]
[command
commandGroup
][
aliasname
=command
--options
]
- commandGroup
はコマンド名前空間です。例: コマンドaws ec2 describe-regions
はec2
コマンドグループの下にあります。- aliasname
はエイリアスと呼ばれるものです。- command
は呼び出したいコマンドで、他のエイリアスを含めることができます。エイリアスにオプションやパラメータを含めたり、エイリアスを呼び出すときに追加したりできます。
次の例では、aws ec2
describe-regions
aws ec2 regions
」という名前のエイリアスを作成します。このエイリアスは ec2
コマンド名前空間の既存の AWS CLI
コマンドを呼び出すため、aws ec2
プレフィックスなしでコマンドを記述できます。
[command ec2] regions = describe-regions --query Regions[].RegionName
コマンド名前空間外のコマンドからエイリアスを作成するには、コマンド全体の前に感嘆符を付けます。次の例では、aws iam
list-instance-profiles
aws ec2
instance-profiles
」という名前のエイリアスを作成します。
[command ec2] instance-profiles = !aws iam list-instance-profiles
注記
エイリアスは既存のコマンド名前空間のみを使用します。新しいコマンド名前空間を作成することはできません。例えば、johnsmith
コマンド名前空間がまだ存在していな場合、[command johnsmith]
セクションでエイリアスを作成することはできません。
bash スクリプトエイリアスの作成
警告
AWS CLI エイリアス bash スクリプトを使用するには、bash 互換ターミナルを使用する必要があります。
次の構文を使用して、より高度なプロセス用の bash スクリプトを使用してエイリアスを作成できます。
[Syntax (構文)]
aliasname
= !f() {script content
}; f
- aliasname
は、エイリアスと script content
は、エイリアスを呼び出すときに実行するスクリプトです。
次の例では、opendns
を使用して現在の IP アドレスを出力します。他のエイリアスでもエイリアスを使用できるため、次の myip
エイリアスは、他のエイリアス内から IP アドレスのアクセスを許可または取り消す場合に便利です。
myip = !f() { dig +short myip.opendns.com @resolver1.opendns.com }; f
次のスクリプト例では、前のaws myip
エイリアスを呼び出して、Amazon EC2 セキュリティグループ進入の IP アドレスを承認します。
authorize-my-ip = !f() { ip=$(aws myip) aws ec2 authorize-security-group-ingress --group-id ${1} --cidr $ip/32 --protocol tcp --port 22 }; f
bash スクリプトを使用するエイリアスを呼び出すと、変数は常に入力した順序で渡されます。bash スクリプトでは、変数名は考慮されず、表示される順序のみが考慮されます。次の textalert
エイリアスの例では、--message
オプションの変数が最初で、--phone-number
オプションが 2 番目です。
textalert = !f() { aws sns publish --message "${1}" --phone-number ${2} }; f
ステップ 3: エイリアスを呼び出す
alias
ファイルに作成したエイリアスを実行するには、次の構文を使用します。エイリアスを呼び出すときに、追加のオプションを追加できます。
[Syntax (構文)]
$
aws
aliasname
次の例では、aws whoami
コマンドエイリアスを使用しています。
$
aws whoami
{ "UserId": "A12BCD34E5FGHI6JKLM", "Account": "1234567890987", "Arn": "arn:aws:iam::1234567890987:user/userName" }
次の例では、aws whoami
エイリアスを追加オプションとともに使用して、Account
出力で text
の数のみを返します。
$
aws whoami --query Account --output text
1234567890987
次の例では、aws ec2 regions
サブコマンドエイリアスを使用しています。
$
aws ec2 regions
[ "ap-south-1", "eu-north-1", "eu-west-3", "eu-west-2", ...
bash スクリプト変数を使用したエイリアスの呼び出し
bash スクリプトを使用するエイリアスを呼び出すと、変数は入力された順序で渡されます。bash スクリプトでは、変数の名前は考慮されず、表示される順序のみが考慮されます。例えば、次の textalert
エイリアスでは、オプション --message
の変数が最初で、--phone-number
が 2 番目です。
textalert = !f() { aws sns publish --message "${1}" --phone-number ${2} }; f
textalert
エイリアスを呼び出すときは、エイリアスで実行されるのと同じ順序で変数を渡す必要があります。次の例では、変数 $message
と $phone
を使用します。$message
変数は ${1}
オプションの --message
として渡され、$phone
変数は ${2}
オプションの --phone-number
として渡されます。これにより、textalert
エイリアスを正常に呼び出してメッセージを送信できます。
$
aws textalert $message $phone
{ "MessageId": "1ab2cd3e4-fg56-7h89-i01j-2klmn34567" }
次の例では、エイリアスを $phone
および $message
に呼び出すときに順序が切り替わります。$phone
変数は ${1}
オプションの --message
として渡され、$message
変数は ${2}
オプションの --phone-number
として渡されます。変数の順序が間違っているため、エイリアスは変数を間違って渡します。$message
の内容が --phone-number
オプションの電話番号の書式要件と一致しないため、これはエラーを引き起こします。
$
aws textalert $phone $message
usage: aws [options] <command> <subcommand> [<subcommand> ...] [parameters] To see help text, you can run: aws help aws <command> help aws <command> <subcommand> help Unknown options: text
エイリアスリポジトリの例
のエイAWS CLI リアスリポジトリalias
ファイルサンプル全体を使用することも、個々のエイリアスを使うこともできます。
警告
このセクションのコマンドを実行すると、既存の alias
ファイルが削除されます。既存のエイリアスファイルが上書きされないようにするには、ダウンロード先の場所を変更します。
リポジトリのエイリアスを使用するには
-
Git をインストールします。インストール手順については、Git の Documentation の Getting Started - Installing Git
をご参照ください。 -
jp
コマンドをインストールします。jp
コマンドは、tostring
エイリアスで使用されます。インストール手順については、 の JMESPath (jp) README.mdを参照してくださいGitHub。 -
jq
コマンドをインストールします。jq
コマンドは、tostring-with-jq
エイリアスで使用されます。インストール手順については、 のJSONプロセッサ (jq)を参照してくださいGitHub。 -
次のいずれかの操作を行って、
alias
ファイルをダウンロードします。-
次のコマンドを実行して、
alias
ファイルをリポジトリからダウンロードし、設定フォルダにコピーします。 -
リポジトリから直接ダウンロードし、 AWS CLI 設定
cli
フォルダの フォルダに保存します。デフォルトでは、構成フォルダは Linux または macOS では「~/.aws/
」、Windows 上は「%USERPROFILE%\.aws\
」にあります。
-
-
エイリアスが機能していることを確認するには、次のエイリアスを実行します。
$
aws whoami
aws sts get-caller-identity
コマンドと同じ応答が表示されます。{ "Account": "012345678901", "UserId": "AIUAINBADX2VEG2TC6HD6", "Arn": "arn:aws:iam::012345678901:user/myuser" }
リソース
-
のエイAWS CLI リアスリポジトリ
GitHubには、デ AWS CLI ベロッパーチームが作成した AWS CLI エイリアスの例とコミュニティの貢献が含まれています AWS CLI 。 -
reAWS :Invent 2016: The Effective AWS CLI User on
からのエイリアス機能の発表YouTube。