Installieren und Verwenden von Befehlszeilen-Cheat Sheets unter Ubuntu 14.04

Einführung

Cheat ist ein auf einer Befehlszeile basierendes Python-Programm, mit dem Systemadministratoren hilfreiche Spickzettel anzeigen und speichern können. Es werden Klartextbeispiele eines ausgewählten Befehls abgerufen, um den Benutzer an Optionen, Argumente oder häufige Verwendungen zu erinnern. Cheat ist ideal für "Befehle, die Sie häufig verwenden, aber nicht häufig genug, um sich zu erinnern."

Blätter sind kleine portable Textdateien, die auf mehrere Linux / Unix-Systeme kopiert werden können. Sie werden wie jedes andere Befehlszeilenprogramm aufgerufen und angezeigt. Es werden Basisblätter für gängige Programme bereitgestellt, Sie können jedoch auch benutzerdefinierte neue Blätter hinzufügen.

Voraussetzungen

Um diesem Tutorial zu folgen, benötigen Sie:

Schritt 1 - Cheat installieren

Vor der Installation von Cheat müssen wir sicherstellen, dass auf dem System alles auf dem neuesten Stand ist.

sudo apt-get update && sudo apt-get upgrade

Bestätigen Sie mit + y + für alle Eingabeaufforderungen in diesem Schritt.

Die Installation von Cheat erfolgt am besten mit dem Python-Paketmanager Pip. Installieren Sie Pip daher als Nächstes.

sudo apt-get install python-pip

Cheat selbst hängt nur von zwei Python-Paketen ab, die beide bequem im Cheat-Paket von Pip enthalten sind. Zum Schluss installiere Cheat.

sudo pip install cheat

Bei einer erfolgreichen Installation von Cheat werden folgende Zeilen ausgegeben:

Sudo Pip Install Cheat Ausgabe

Successfully installed cheat docopt pygments
Cleaning up...

Wir können bestätigen, dass Cheat installiert ist und funktioniert, indem wir es mit der Option "+ -v +" ausführen.

cheat -v

Dies gibt die Version von Cheat aus, die wir installiert haben.

Cheat -v Ausgabe

cheat 2.1.10

Schritt 2 - Einstellen des Texteditors

Bevor wir unsere eigenen Spickzettel erstellen können, muss Cheat wissen, welchen Texteditor wir standardmäßig zum Bearbeiten der Spickzettel verwenden möchten. Dazu müssen wir eine Umgebungsvariable mit dem Namen "+ EDITOR +" erstellen und festlegen. Weitere Informationen zu Shell- und Umgebungsvariablen finden Sie unter https://www.digitalocean.com/community/tutorials/how-to-add-and-delete-users-on-an-ubuntu-14-04-vps Lernprogramm zum Lesen und Festlegen von Umgebungsvariablen und Shell-Variablen.

Da nano bereits auf Ubuntu installiert ist und im Allgemeinen leicht zu erlernen ist, wird es mit dem folgenden Befehl als bevorzugter Texteditor festgelegt. Sie können jedoch stattdessen vim, emacs oder Ihren bevorzugten Texteditor verwenden.

export EDITOR="/usr/bin/nano"

Wir können bestätigen, dass dies erfolgreich war, indem wir Folgendes eingeben:

printenv EDITOR

Dadurch wird der Inhalt der neuen Umgebungsvariablen "+ $ EDITOR +" ausgegeben:

printenv EDITOR-Ausgabe

/usr/bin/nano

Um diese Änderung für alle zukünftigen Shell-Sitzungen dauerhaft zu machen, müssen Sie die Umgebungsvariablendeklaration zu Ihrer + .bashrc + - Datei hinzufügen. Dies ist eine von mehreren Dateien, die zu Beginn einer Bash-Shell-Sitzung ausgeführt werden.

Öffnen Sie diese Datei zum Bearbeiten:

nano ~/.bashrc

Fügen Sie dann den gleichen Exportbefehl hinzu:

~ / .bashrc

. . .
# If not running interactively, don't do anything
case $- in
   *i*) ;;
     *) return;;
esac



# don't put duplicate lines or lines starting with space in the history.
# See bash(1) for more options
HISTCONTROL=ignoreboth
. . .

Speichern und beenden Sie die Datei, indem Sie die Tastenkombination "+ STRG + X " und anschließend " Y " gefolgt von " ENTER +" drücken.

Schritt 3 - Cheat anpassen (optional)

In diesem Schritt passen wir den Cheat an, indem wir die Syntaxhervorhebung und die automatische Vervollständigung der Befehlszeile aktivieren.

Wenn Sie einen Terminalemulator mit Farbunterstützung verwenden, können Sie die Syntaxhervorhebung für Ihre Arbeitsblätter aktivieren, indem Sie eine Shell-Umgebungsvariable mit dem Namen "+ CHEATCOLORS +" exportieren, die als "true" definiert ist:

export CHEATCOLORS=true

Wenn Sie jetzt Spickzettel abrufen, werden diese mit farbiger Syntaxhervorhebung formatiert. Wenn Sie diese Funktion mögen, können Sie sie über Shell-Sitzungen hinweg dauerhaft machen, indem Sie den Befehl export zu Ihrer + .bashrc + -Datei hinzufügen.

Öffnen Sie die Datei + .bashrc + erneut:

nano ~/.bashrc

Fügen Sie dann die neue Variable + CHEAT COLORS + unter der Variablen + EDITOR hinzu:

~ / .bashrc

. . .
# If not running interactively, don't do anything
case $- in
   *i*) ;;
     *) return;;
esac

export EDITOR="/usr/bin/nano"


# don't put duplicate lines or lines starting with space in the history
. . .

Speichern und schließen Sie die Datei.

Um die automatische Vervollständigung der Befehlszeile zu aktivieren, müssen wir ein Skript in das Verzeichnis + / etc / bash_completion.d / + einfügen. Wechseln Sie in dieses Verzeichnis.

cd /etc/bash_completion.d/

Laden Sie dann das benötigte Skript von der GitHub-Projektseite von Cheat herunter.

sudo wget https://raw.githubusercontent.com/chrisallenlane/cheat/master/cheat/autocompletion/cheat.bash

Geben Sie nun "+ bash +" in die aktuelle Shell ein, um die Änderungen zu übernehmen.

bash

Die automatische Vervollständigung von Tabs für Cheat ist jetzt aktiviert. Wenn Sie "+ Cheat" gefolgt von einem Leerzeichen eingeben, erhalten Sie durch zweimaliges Drücken der "+ TAB" -Taste eine Liste mit Befehlen.

Cheat Tab Auto-Vervollständigung ausgegeben

cheat
7z           asciiart     chown        df           du
grep         indent       jrnl         mkdir        netstat
. . .

Schritt 4 - Cheat ausführen

Um den Cheat in seiner einfachsten Form auszuführen, rufen Sie ihn wie jeden anderen Befehl auf, gefolgt von einem vorhandenen Namen des Spickzettel.

Hier ist ein Beispiel, wie dies mit einem der mit Cheat gelieferten Standardblätter für den Befehl "+ tail +" (der die letzten Zeilen einer Datei ausgibt) gemacht wird.

cheat tail

Sie sehen dann folgende Ausgabe:

Schwanzausgabe betrügen

# To show the last 10 lines of file
tail file

# To show the last N lines of file
tail -n N file

# To show the last lines of file starting with the Nth
tail -n +N file

# To show the last N bytes of file
tail -c N file

# To show the last 10 lines of file and to wait for file to grow
tail -f file

Um zu sehen, welche anderen vorhandenen Spickzettel uns zur Verfügung stehen, führen Sie den Spickzettel mit der Option "+ -l +" aus.

cheat -l

Hier werden alle verfügbaren Blätter und deren Speicherort auf dem Server aufgelistet.

Schritt 5 - Erstellen und Bearbeiten von Spickzettel

Obwohl die in Cheat enthaltenen vorläufigen Basisblätter nützlich und vielfältig sind, enthalten sie nicht alle Shell-Befehle oder -Programme, die uns zur Verfügung stehen. Der wahre Vorteil von Chest besteht darin, dass Sie Ihre eigenen benutzerdefinierten Blätter hinzufügen.

Zum Beispiel gibt es kein Blatt für das Netzwerkprogramm + ping +:

cheat ping

Ping-Ausgabe betrügen

No cheatsheet found for ping

Lassen Sie uns eine als Beispiel für das Erstellen und Hinzufügen eines neuen Blatts verwenden. Rufen Sie zuerst Cheat in der Befehlszeile erneut auf, diesmal gefolgt von "+ -e +" und dem Namen des Blattes, für das Sie es erstellen.

cheat -e ping

Cheat erstellt und öffnet die entsprechende Datei zur Bearbeitung mit der zuvor eingestellten Variable + $ EDITOR +.

Fügen Sie am Anfang dieses neuen Arbeitsblatts ein nützliches Beispiel für einen Ping-Befehl mit einem Kommentar (gekennzeichnet durch "+ # +") hinzu, der die Funktionsweise des Befehls bei der Eingabe erläutert. Hier ist ein solcher Befehl, den Sie in die Datei eingeben könnten:

~ / .cheat / ping

# ping a host with a total count of 15 packets overall.
ping -c 15 www.example.com

Speichern und schließen Sie die Datei wie zuvor. Als nächstes testen wir das neue Blatt, indem wir + cheat ping + erneut ausführen.

cheat ping

Dieses Mal sehen wir den Spickzettel, den wir gerade hinzugefügt haben.

Ping-Ausgabe betrügen

# ping a host with a total count of 15 packets overall.
ping -c 15 www.example.com

Um ein vorhandenes Blatt zu ändern, können wir wieder die Option "+ -e +" verwenden.

cheat -e ping

Das Ping Sheet ist jetzt geöffnet und wir können weitere Beispiele oder Inhalte hinzufügen. Zum Beispiel können wir Folgendes hinzufügen:

~ / .cheat / ping

# ping a host with a total count of 15 packets overall.
ping -c 15 www.example.com

# ping a host with a total count of 15 packets overall, one every .5 seconds (faster ping).
ping -c 15 -i .5 www.example.com

Schritt 6 - Suche nach Spickzettel

Cheat hat eine eingebaute Suchfunktion, die mit der Option "+ -s +" ausgelöst wird. Dadurch werden alle Vorkommen des von Ihnen bereitgestellten Texts erfasst. Zum Beispiel:

cheat -s packets

Dieser Befehl gibt alle Zeilen mit dem Begriff "Pakete" und dem Blatt aus, von dem sie stammen.

Cheat -s Pakete ausgegeben

nmap:
 # --min-rate=X => min X packets / sec

ping:
 # ping a host with a total count of 15 packets overall.
 # ping a host with a total count of 15 packets overall, one every .5 seconds (faster ping).

route:
 # To add a default  route (which will be used if no other route matches).  All packets using this route will be gatewayed through "mango-gw". The device which will actually be used for that route depends on how we can reach "mango-gw" - the static route to "mango-gw" will have to be set up before.

tcpdump:
 # and other packets being transmitted or received over a network. (cf Wikipedia).

. . .

Fazit

Da alle Cheat-Anzeigen im Klartext erfolgen und über die Standardausgabe der Shell erfolgen, können wir damit beliebige Textverarbeitungsbefehle (wie z. B. "+ grep ") verwenden. Sie können die https://www.digitalocean.com/community/tutorials/ using-grep-regular-expressions-to-search-for-text-patterns-in-linux[Verwenden Sie Grep & Regular Expressions, um nach Textmustern zu suchen in Linux] Tutorial für weitere Informationen zu ` grep +`.

Darüber hinaus eignen sich Versionskontrollsysteme wie Git mit GitHub ideal zum zentralen Speichern Ihrer benutzerdefinierten Spickzettel, sodass Sie sie über das Klonen eines Repositorys auf mehreren Plattformen abrufen können. Ein Blatt wird als custom klassifiziert, wenn Sie es hinzugefügt, geändert oder durch Cheat selbst erstellt haben.

Alle benutzerdefinierten Spickzettel werden im Stammverzeichnis Ihres Linux-Benutzers in einem versteckten Ordner mit dem Namen "+ .cheat " gespeichert. Sie können diesen Speicherort finden, indem Sie " cheat -d +" ausführen, wodurch zwei Verzeichnisse ausgegeben werden: Das erste ist der Speicherort Ihrer benutzerdefinierten Arbeitsblätter und das zweite der Speicherort der Standardarbeitsblätter, die Sie bei der Installation mit Cheat erhalten.

Um auf Ihre Bibliothek mit benutzerdefinierten Arbeitsblättern auf anderen Systemen zuzugreifen, müssen Sie nur diesen Ordner "+ .cheat +" auf diese kopieren. Die Spickzettel sind kleine Klartextdateien, sodass sie sich perfekt für die Versionskontrolle eignen. Eine vollständige Lösung für den jederzeitigen Zugriff auf Ihre Spickzettel und Konfigurationsdateien finden Sie unter https://www.digitalocean.com/community/tutorials/how-to-use-git-to-manage-your-user -configuration-files-on-a-linux-vps [So verwenden Sie Git zum Verwalten Ihrer Benutzerkonfigurationsdateien auf einem Linux-VPS] Tutorial.