Auf der Seite http://commandlinefu.com (englisch) werden einzeilige Kommandos (bzw. Kommandoketten) für die Shell und häufige Programme (vim, mysql, screen,…) gesammelt.
Dort gibt es so ziemlich Alles vom kurzen
cd -mit dem man zum letzten Verzeichnis wechselt bis zu recht langen und komplizierten Kommandos wie
awk '/sshd/ && /Failed/ {gsub(/invalid user/,""); printf "%-12s %-16s %s-%s-%s\n", $9, $11, $1, $2, $3}' /var/log/auth.log
mit dem man sich die Usernamen, IP-Adressen und Zeiten von fehlgeschlagenen SSH-Zugriffen anzeigen lassen kann.
Bei solch komplexen Befehlen ist es praktisch, sie sich als Script zu speichern:
echo "!!" > /path/to/my/bin/script.sh
speichert den letzten ausgeführten Befehl in die Datei script.sh im Verzeichnis /path/to/my/bin
Mit <Alt>+. lässt sich das letzte Argument in den nächsten Befehl einfügen, so dass
chmod +x <Alt>+.
zu
chmod +x /path/to/my/bin/script.sh
wird und man so das erstellte Script auch direkt ausführbar machen kann. Ich habe mir ein eigenes bin Verzeichnis in meinem Homeverzeichnis erstellt und es in der .bashrc zu $PATH hinzugefügt. Also einfach folgende Zeile hinzufügen:
export PATH=$PATH:/home/user/bin
Weitere praktische Kommandos sind
cp filename{,.bak}
um ein Backup einer Datei anzulegen oder
sudo !!
was das letzte Kommando mit sudo ausführt, falls man dies beim ersten mal vergessen hat. (Wie man sieht steht !! für das letzte Kommando)
Mit
ps aux | sort -nrk 4 | head
kann man sich die laufenden Prozesse sortiert nach ihrem Speicherverbrauch anzeigen lassen.
Ziemlich praktisch ist auch
wget -q -O - "http://www.tarball.com/tarball.gz" | tar zxvf -
mit dem man eine .tar.gz Datei herunterladen und gleichzeitig entpacken kann ohne die Datei speichern zu müssen.
Auf der Seite gibt es noch haufenweise andere solch praktische Einzeiler. Natürlich sind auch einige dabei die nicht so sehr viel Sinn ergeben, aber dafür kann jeder ein Kommando bewerten und kommentieren. Man kann auch suchen sowie Tags nutzen. Zusätzlich werden automatisch alle verwendeten Funktionen in einer extra Tagcloud aufbereitet, so dass man auch Kommandos findet die nicht oder schlecht getagt sind.
Somit ist die Seite wunderbar zum Stöbern, aber auch zum gezielten Suchen von Befehlen geeignet.
Also los, trainiere Dein Commandline-Fu
Folgende Beiträge könnten Dich auch interessieren:
Schlagworte: commandlinefu, Konsole








Das hinzufügen des letzten Arguments mit +. kannte ich bisher noch nicht so. Ich mach das ganze gerne über die Bash Variable “!$”.
Ja, mit der Variable “!$” gehts auch. Ich finds halt praktisch, vor dem Abschicken des Kommandos nochmal zu sehen, was ich da eigentlich eingegeben hab. Ist aber eigentlich auch nicht so wichtig, wenn man die Kommandos direkt hintereinander eingibt.
Ach ja: <Alt> + . ist einen Tastendruck kürzer