Wie kann ich im Linux-Terminal eine Referenz oder einen Spickzettel zur grundlegenden Bash-Syntax anzeigen?

Wie kann ich im Linux-Terminal eine Referenz oder einen Spickzettel zur grundlegenden Bash-Syntax anzeigen?

Jedes Mal, wenn ich ein kleines Bash-Scripting mit if-Anweisungen, der Suche nach leeren Variablen und nicht vorhandenen Dateien usw. durchführen muss, suche ich bei Google nach einem einfachen Bash-Handbuch oder einer Anleitung.

Diese sind oft viel zu lang und kompliziert, um meine jeweilige Frage schnell zu beantworten.

Ich dachte also, dass es einen Befehl oder eine Manpage geben muss, die die grundlegende Bash-Syntax (für Dinge wie if-Anweisungen, Prüfungen auf leere Variablen, nicht vorhandene Dateien usw.) kurz und verständlich erklärt. Ich bin mir sicher, dass ich den Befehl einfach nicht gefunden habe (man bash scheint es nicht zu sein).

Wo finde ich das?

Antwort1

  • man bashist die kanonische Bash-Referenz.
  • help helpbietet Hilfe zum helpintegrierten Bash-Element und zeigt, wie Sie kurze Hilfemeldungen zu anderen integrierten Bash-Elementen erhalten, wie beispielsweise help for.
  • Gregs Wikiist der beste Ort, um auf den Punkt gebrachtes, knappes und manchmal sogar unterhaltsames Referenzmaterial zu praktisch jedem Aspekt von Bash zu finden.
  • Wenn Sie schnell die Syntax nachschlagen möchten, können SieVersionskontrolle.bash_history. Es gibt einfach zu viele Befehle, verschiedene Parametersyntaxen, sedZeilenrauschen awkund andere Dinge, um sich das alles merken zu können. Daher ist es schön, ein "gut gepflegtes" persönliches Nachschlagewerk zu haben, mitStichworteum nach oben zu schauen.

Antwort2

Weil dort sindviele solcher Dinge online, hier ist ein Vorschlag für Sie; ich verwende dies für alle möglichen Dinge.

Erstellen Sie ein Verzeichnis $HOME/notes. Fügen Sie einen Unterordner hinzu bash. Wenn Sie keinen haben $HOME/bin, erstellen Sie einen und fügen Sie ihn mit der von Ihnen bevorzugten Methode zu Ihrem Pfad hinzu (zum Beispiel: in~/.bashrc). Fügen Sie dort dann ein einfaches Skript ein cmdref.sh:

#!/bin/bash

if [ -z "$CMREF_DIR" ]; then
        CMREF_DIR="$HOME/notes"
fi

cat "$CMREF_DIR/${1}/${2}.txt"

Erstellen Sie der Einfachheit halber einen symbolischen Link. ln -s ~/bin/cmdref.sh ~/bin/cmdrefIch mache das gerne, damit Sie die cmdref.shQuelle bearbeiten können und ein Editor den Dateityp weiterhin anhand der Endung erkennt.

Kopieren Sie beliebige Elemente und fügen Sie sie in verschiedene Dateien ein ~/notes/bash. Sie könnten beispielsweise eine Datei haben wie arrays.txt, loops.txt, usw. Solange Sie dies nur für Ihren persönlichen Gebrauch tun, verstoßen Sie nicht gegen das Urheberrecht.

Sie können dies jetzt von der Befehlszeile aus verwenden, z. B.: cmdref bash arraysund dieser Spickzettel wird auf der Konsole gedruckt. Beachten Sie, dass Sie die Dateien zwar .txt(auch hier ist die Verwendung geeigneter Suffixe für Editoren, Dateibrowser usw. nützlich) nicht verwenden sollten, cmdref bash arrays.txtda es angehängt wird cmdref.sh(das Skript konvertiert lediglich Pfade und fügt das Suffix hinzu).

Antwort3

man bashdeckt jeden Aspekt der Bash-Syntax ab, z. B. für if statements, string is zeround non-existent files, suchen Sie einfach (drücken Sie die /Taste und geben Sie Folgendes ein) nach CONDITIONAL EXPRESSIONS.

verwandte Informationen