Vervollständigung von Befehlen - AWS Command Line Interface

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Vervollständigung von Befehlen

AWS Command Line Interface (AWS CLI) enthält eine Bash-kompatible Funktion zur Befehlsvervollständigung, mit der Sie die Tab-Taste verwenden können, um einen teilweise eingegebenen Befehl abzuschließen. Auf den meisten Systemen müssen Sie dies manuell konfigurieren.

Weitere Informationen zur Auto-Prompt-Funktion von AWS CLI Version 2 finden Sie unter Aufforderung der AWS CLI zur Eingabe von Befehlen.

Funktionsweise

Wenn Sie einen Befehl, einen Parameter oder eine Option teilweise eingeben, wird der Befehl von der Befehlsvervollständigungsfunktion entweder automatisch vervollständigt oder von dieser eine Liste mit vorgeschlagenen Befehlen angezeigt. Um die Befehlsvervollständigung zu veranlassen, geben Sie einen Befehl teilweise ein und betätigen die Vervollständigungstaste, in den meisten Shells normalerweise Tab.

Die folgenden Beispiele zeigen verschiedene Möglichkeiten, wie Sie die Befehlsvervollständigung nutzen können:

  • Geben Sie einen Befehl teilweise ein, und drücken Sie die Tab-Taste, um sich eine Liste mit vorgeschlagenen Befehlen anzeigen zu lassen.

    $ 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
  • Geben Sie einen Parameter teilweise ein und drücken Sie die Tab-Taste, um sich eine Liste mit vorgeschlagenen Parametern anzeigen zu lassen.

    $ 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
  • Geben Sie einen Parameter ein, und drücken Sie die Tab-Taste, um sich Liste mit vorgeschlagenen Ressourcenwerten anzeigen zu lassen. Diese Funktion ist nur in Version 2 der AWS CLI verfügbar.

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

Konfigurieren der Befehlsvervollständigung unter Linux oder macOS

Um die Befehlsvervollständigung unter Linux oder macOS zu konfigurieren, müssen Sie den Namen der verwendeten Shell und den Speicherort des aws_completer-Skripts kennen.

Anmerkung

Auf Amazon-EC2-Instances, die Amazon Linux ausführen, ist die Befehlsvervollständigung automatisch konfiguriert und standardmäßig aktiviert.

Bestätigen Sie, dass sich der Ordner der Vervollständigung in Ihrem Pfad befindet

Damit die AWS-Vervollständigung erfolgreich funktioniert, muss sich aws_completer im Pfad Ihrer Shell befinden. Der which-Befehl kann überprüfen, ob sich die Vervollständigung in Ihrem Pfad befindet.

$ which aws_completer /usr/local/bin/aws_completer

Wenn der Befehl die Vervollständigung nicht finden kann, führen Sie die folgenden Schritte aus, um den Ordner der Vervollständigung zu Ihrem Pfad hinzuzufügen.

Schritt 1: Suchen Sie die Vervollständigung AWS

Der Speicherort der AWS-Vervollständigung kann je nach verwendeter Installationsmethode variieren.

  • Paket-Manager – Programme wie pip, yum, brew und apt-get installieren in der Regel die AWS-Vervollständigung (oder eine entsprechende symbolische Verknüpfung) in einem standardmäßigen Pfadspeicherort.

    • Wenn Sie pip ohne den Parameter --user verwendet haben, ist der Standardpfad /usr/local/bin/aws_completer.

    • Wenn Sie pip ohne den Parameter --user verwendet haben, ist der Standardpfad /home/username/.local/bin/aws_completer.

  • Gebündeltes Installationsprogramm – Wenn Sie das mitgelieferte Installationsprogramm verwendet haben, ist der Standardpfad /usr/local/bin/aws_completer.

Wenn alles andere fehlschlägt, können Sie den find-Befehl verwenden, um Ihr Dateisystem nach der AWS-Vervollständigung zu durchsuchen.

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

Schritt 2: Identifizieren Ihrer Shell

Um zu ermitteln, welche Shell Sie verwenden, können Sie einen der folgenden Befehle verwenden.

  • echo $SHELL – Zeigt den Programmdateinamen der Shell an. Dieser wird in der Regel für die verwendete Shell korrekt sein, sofern Sie keine andere Shell nach dem Anmelden gestartet haben.

    $ echo $SHELL /bin/bash
  • ps – zeigt die für den aktuellen Benutzer ausgeführten Prozesse an. Einer von ihnen ist die Shell.

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

Schritt 3: Fügen Sie die Vervollständigung zu Ihrem Pfad hinzu

  1. Suchen Sie das Profilskript für die Shell in Ihrem Benutzerordner.

    $ ls -a ~/ . .. .bash_logout .bash_profile .bashrc Desktop Documents Downloads
    • Bash.bash_profile, .profile oder .bash_login

    • Zsh.zshrc

    • Tcsh.tcshrc, .cshrc oder .login

  2. Fügen Sie einen Exportbefehl an das Ende Ihres Profilskripts hinzu und orientieren Sie sich dabei an folgendem Beispiel. Ersetzen Sie /usr/local/bin/ durch den Ordner, den Sie im vorherigen Abschnitt entdeckt haben.

    export PATH=/usr/local/bin/:$PATH
  3. Laden Sie das Profil erneut in die aktuelle Sitzung, damit die Änderungen wirksam werden. Ersetzen Sie .bash_profile durch den Namen des Shell-Skripts, das Sie im ersten Abschnitt entdeckt haben.

    $ source ~/.bash_profile

Aktivieren der Befehlsvervollständigung

Nachdem Sie bestätigt haben, dass sich die Vervollständigung in Ihrem Pfad befindet, aktivieren Sie die Befehlsvervollständigung, indem Sie den entsprechenden Befehl für die von Ihnen verwendete Shell ausführen. Sie können den Befehl des Profils Ihrer Shell hinzufügen, sodass er immer ausgeführt wird, wenn Sie eine neue Shell öffnen. Ersetzen Sie in jedem Befehl den Pfad /usr/local/bin/ durch den Pfad, den Sie auf Ihrem System in Bestätigen Sie, dass sich der Ordner der Vervollständigung in Ihrem Pfad befindet finden.

  • bash – Verwenden Sie den integrierten Befehl complete.

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

    Fügen Sie den vorherigen Befehl ~/.bashrc hinzu, sodass er immer ausgeführt wird, wenn Sie eine neue Shell öffnen. Ihr ~/.bash_profile sollte ~/.bashrc bereitstellen, um sicherzustellen, dass der Befehl auch in Anmelde-Shells ausgeführt wird.

  • zsh – um die Befehlsvervollständigung auszuführen, müssen Sie bashcompinit ausführen, indem Sie die folgende Autoload-Zeile am Ende Ihres ~/.zshrc-Profilskripts hinzufügen.

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

    Um die Befehlsvervollständigung zu aktivieren, verwenden Sie den integrierten Befehl complete.

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

    Fügen Sie die vorherigen Befehle ~/.zshrc hinzu, sodass sie immer ausgeführt werden, wenn Sie eine neue Shell öffnen.

  • tcsh – Die Vervollständigung für tcsh erwartet einen Worttyp und ein Muster, um das Vervollständigungsverhalten zu definieren.

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

    Fügen Sie den vorherigen Befehl ~/.tschrc hinzu, sodass er immer ausgeführt wird, wenn Sie eine neue Shell öffnen.

Nachdem Sie die Befehlsvervollständigung aktiviert haben, funktioniert Verifizieren der Befehlsvervollständigung.

Verifizieren der Befehlsvervollständigung

Nachdem Sie die Befehlsvervollständigung aktiviert haben, laden Sie Ihre Shell neu, geben Sie einen Teilbefehl ein und drücken Sie die Tab-Taste, um die verfügbaren Befehle anzuzeigen.

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

Konfigurieren der Befehlsvervollständigung unter Windows

Anmerkung

Informationen darüber, wie PowerShell die Vervollständigung handhabt, einschließlich ihrer verschiedenen Vervollständigungsschlüssel, finden Sie unter about_tab_Expansion in Microsoft PowerShell Docs.

Um die Befehlsvervollständigung für PowerShell unter Windows zu aktivieren, führen Sie die folgenden Schritte in PowerShell aus.

  1. Öffnen Sie Ihr $PROFILE mit dem folgenden Befehl.

    PS C:\> Notepad $PROFILE

    Wenn Sie kein $PROFILE haben, erstellen Sie mit dem folgenden Befehl ein Benutzerprofil.

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

    Weitere Informationen zu PowerShell-Profilen finden Sie unter Verwenden von Profilen in Windows PowerShell ISE auf der Microsoft-Docs-Website.

  2. Um die Befehlsvervollständigung zu aktivieren, fügen Sie dem Profil den folgenden Codeblock hinzu, speichern und schließen Sie die Datei.

    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. Nachdem Sie die Befehlsvervollständigung aktiviert haben, laden Sie Ihre Shell neu, geben Sie einen Teilbefehl ein und drücken Sie die Tab-Taste, um die verfügbaren Befehle zu durchlaufen.

    $ aws sTab
    $ aws s3

    Um alle verfügbaren Befehle zu sehen, die zur Vervollständigung verfügbar sind, geben Sie einen Teil eines Befehls ein und drücken Sie Strg + Leerzeichen.

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