コマンド補完 - AWS Command Line Interface

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

コマンド補完

AWS Command Line Interface (AWS CLI) には bash 互換のコマンド補完機能が含まれており、Tab キーを使用して部分的に入力されたコマンドを完了できます。ほとんどのシステムでは、これを手動で設定する必要があります。

代わりに AWS CLI バージョン 2 の自動プロンプト機能については、「」を参照してくださいAWS CLI でコマンドの入力プロンプトを表示する

仕組み

コマンド、パラメータ、またはオプションの一部を入力すると、コマンド補完機能によってコマンドが自動的に入力されるか、コマンドの候補リストが表示されます。コマンドの完了を促すには、コマンドに部分的に入力し、完了キーを押します。通常、Tab ほとんどのシェルで。

次の例は、コマンド補完を使用するさまざまな方法を示しています。

  • コマンドを部分的に入力して キーを押します。Tab コマンドの推奨リストを表示する 。

    $ aws dynamodb dTAB delete-backup describe-global-table delete-item describe-global-table-settings delete-table describe-limits describe-backup describe-table describe-continuous-backups describe-table-replica-auto-scaling describe-contributor-insights describe-time-to-live describe-endpoints
  • パラメータを部分的に入力して キーを押します。Tab パラメータの推奨リストを表示します。

    $ aws dynamodb delete-table --TAB --ca-bundle --endpoint-url --profile --cli-connect-timeout --generate-cli-skeleton --query --cli-input-json --no-paginate --region --cli-read-timeout --no-sign-request --table-name --color --no-verify-ssl --version --debug --output
  • パラメータを入力して キーを押します。Tab は、リソース値の推奨リストを表示します。この機能は AWS CLI バージョン 2 でのみ使用できます。

    $ aws dynamodb db delete-table --table-name TAB Table 1 Table 2 Table 3

Linux または macOS でのコマンド補完の設定。

Linux または macOS でコマンド補完を設定するには、使用しているシェルの名前と aws_completer スクリプトの場所を知っている必要があります。

注記

コマンド補完は、Amazon Linux を実行する Amazon EC2インスタンスでデフォルトで自動的に設定および有効になります。

コンプリータがフォルダがパスにあることを確認します

AWS コンプリータが正常に動作するには、 がシェルのパスにあるaws_completer必要があります。「which」コマンドで、コンプリータがパスにあるかどうかをチェックできます。

$ which aws_completer /usr/local/bin/aws_completer

「which」コマンドで補完するものが見つからない場合は、次の手順を使用してコンプリータのフォルダをパスに追加します。

ステップ 1: AWS コンプリータを見つける

AWS コンプリータの場所は、使用するインストール方法によって異なります。

  • パッケージマネージャー - pip、、yum、 などのプログラムはbrewapt-get通常、 AWS コンプリータ (またはシンボリックリンク) を標準のパスロケーションにインストールします。

    • pip を「--user」パラメータを指定せずにを使用した場合、デフォルトのパスは「/usr/local/bin/aws_completer」です。

    • pip を「--user」パラメータと共に使用した場合デフォルトのパスは「/home/username/.local/bin/aws_completer」です。

  • バンドルインストーラ - バンドルされたインストーラを使用した場合、デフォルトのパスは「/usr/local/bin/aws_completer」です。

それ以外のすべてが失敗した場合、 find コマンドを使用してファイルシステムを検索して AWS コンプリータを検索できます。

$ find / -name aws_completer /usr/local/bin/aws_completer

ステップ 2: シェルを識別する

使用しているシェルを特定するには、次のコマンドのいずれかを使用します。

  • echo $SHELL – シェルのプログラムファイル名を表示します。これは通常、ログイン後に別のシェルを起動しない限り、使用中のシェルの名前と一致します。

    $ echo $SHELL /bin/bash
  • ps - 現在のユーザーに対して実行中のプロセスを表示します。それらの 1 つはシェルです。

    $ ps PID TTY TIME CMD 2148 pts/1 00:00:00 bash 8756 pts/1 00:00:00 ps

ステップ 3: コンプリータをパスに追加する

  1. ユーザーフォルダーでシェルのプロファイルスクリプトを見つけます。

    $ ls -a ~/ . .. .bash_logout .bash_profile .bashrc Desktop Documents Downloads
    • Bash.bash_profile.profile、または .bash_login

    • Zsh -.zshrc

    • Tcsh - .tcshrc.cshrc.login

  2. 次の例のように、プロファイルスクリプトの末尾にエクスポートコマンドを追加します。「/usr/local/bin/」を、前のセクションで検出したフォルダに置き換えます。

    export PATH=/usr/local/bin/:$PATH
  3. 変更が有効になるように、プロファイルを現在のセッションに再ロードします。.bash_profile を最初のセッションで見つけたシェルスクリプトの名前で置き換えます。

    $ source ~/.bash_profile

コマンド補完を有効にする

コンプリータがパスにあることを確認したら、使用しているシェル上で適切なコマンドを実行して、コマンド補完を有効にします。コマンドをシェルのプロファイルに追加して、新しいシェルを開くたびに実行できます。各コマンドで、/usr/local/bin/ システム上の にあるパス。 コンプリータがフォルダがパスにあることを確認します

  • bash - 組み込みコマンド「complete」を使用します。

    $ complete -C '/usr/local/bin/aws_completer' aws

    前のコマンドを ~/.bashrc に追加して、新しいシェルを開くたびに実行します。~/.bash_profile はソースとして ~/.bashrc を使用して、コマンドがログインシェルでも実行されるようにできます。

  • zsh - コマンド補完を実行するには、 bashcompinit プロファイルスクリプトの最後に次の自動ロード行を追加して「~/.zshrc」を実行する必要があります。

    $ autoload bashcompinit && bashcompinit $ autoload -Uz compinit && compinit

    コマンド補完を有効にするには、組み込みコマンド complete を使用します。

    $ complete -C '/usr/local/bin/aws_completer' aws

    前のコマンドを ~/.zshrc に追加して、新しいシェルを開くたびに実行します。

  • tcsh – 「tcsh」の補完は、補完の振る舞いを定義するためのワードタイプとパターンを取ります。

    > complete aws 'p/*/`aws_completer`/'

    前のコマンドを ~/.tschrc に追加して、新しいシェルを開くたびに実行します。

コマンド補完を有効にした後は、「コマンド補完の確認」は動作しています。

コマンド補完の確認

コマンド補完を有効にしたら、シェルをリロードし、コマンドの一部を入力し、Tab を押して使用可能なコマンドを表示します。

$ aws sTAB s3 ses sqs sts swf s3api sns storagegateway support

Windows でのコマンド補完の設定。

注記

がさまざまな PowerShell 完了キーを含む完了を処理する方法については、Microsoft Docs の「 about_Tab_Expansion」を参照してください。 PowerShell

Windows で のコマンド補完を有効にするには、 PowerShell 「」の次の手順を実行します PowerShell。

  1. 次のコマンドで「$PROFILE」を開きます。

    PS C:\> Notepad $PROFILE

    $PROFILE」がない場合は、次のコマンドを使用してユーザープロファイルを作成します。

    PS C:\> if (!(Test-Path -Path $PROFILE )) { New-Item -Type File -Path $PROFILE -Force }

    PowerShell プロファイルの詳細については、Microsoft Docs ウェブサイトの「Windows でプロファイルを使用する PowerShell ISE方法」を参照してください。

  2. コマンド補完を有効にするには、次のコードブロックをプロファイルに追加し、保存し、ファイルを閉じます。

    Register-ArgumentCompleter -Native -CommandName aws -ScriptBlock { param($commandName, $wordToComplete, $cursorPosition) $env:COMP_LINE=$wordToComplete if ($env:COMP_LINE.Length -lt $cursorPosition){ $env:COMP_LINE=$env:COMP_LINE + " " } $env:COMP_POINT=$cursorPosition aws_completer.exe | ForEach-Object { [System.Management.Automation.CompletionResult]::new($_, $_, 'ParameterValue', $_) } Remove-Item Env:\COMP_LINE Remove-Item Env:\COMP_POINT }
  3. コマンド補完を有効にしたらシェルをリロードして、コマンドの一部を入力し、[Tab] (タブ) を押して使用可能なコマンドを順次表示させます。

    $ aws sTab
    $ aws s3

    補完で使用できるコマンドを表示するには、コマンドの一部を入力して、Ctrl + [Space] (スペース) を押します。

    $ aws sCtrl + Space s3 ses sqs sts swf s3api sns storagegateway support