[[Inhaltsverzeichnis(1)]] [[Bild(Wiki/Icons/terminal.png, 48, align=left)]] Nicht nur als Einsteiger tut man sich mit Befehlen für die [:Shell:] oftmals schwer. Das Problem „Wie lautete nochmal der Befehl, um xyz zu machen?“ kennt sicherlich jeder. Die folgende Befehlsübersicht soll helfen, dieses Problem zu umgehen. Die wichtigsten Befehle werden hier übersichtlich aufgelistet und kurz beschrieben. {{{#!vorlage Hinweis Die Abgrenzung von Shell-Befehlen und Shell-Anwendungen ist nicht immer einfach. Daher empfiehlt sich auch ein Blick auf [:Shell/Anwendungen:]. }}} = Benutzerverwaltung = {{{#!vorlage Tabelle Befehl Beschreibung +++ [:adduser:] Hinzufügen eines Benutzers +++ [:users:] Anzeige der angemeldeten Benutzer +++ [:chsh:] Änderung der Standard-Shell des Benutzers ("change shell") +++ [:deluser:] Löschung eines Benutzers ("delete user") +++ [:groupadd:] Hinzufügen einer Gruppe ("add group") +++ [:groupdel:] Löschung einer Gruppe ("delete group") +++ [:groupmod:] Bearbeitung einer Gruppe ("modify group") +++ [man_de:id:] {de} Anzeige der Benutzer- und Gruppenkennung (ID) +++ [:newgrp:] Änderung der Gruppe des aktuellen Benutzers ("new group") +++ [:passwd:] Änderung des Passworts eines Benutzers ("password") +++ [:usermod:] Bearbeitung eines Benutzerkontos ("modify user") +++ [:chfn:] erweiterte Benutzerinformationen anpassen }}} = Grundkommandos = {{{#!vorlage Tabelle Befehl Beschreibung +++ [:bat:] modernisierte Variante von `cat` mit identischer Funktion +++ [:cat:] Verknüpfung von Dateien ("concatenate") +++ [:cd:] Wechsel des Arbeitsverzeichnisses ("change directory") +++ [:cp:] Kopie von Dateien oder Verzeichnissen ("copy") +++ [man_de:date:] {de} Anzeige von Datum und Zeit +++ [:echo:] Anzeige eines Textes +++ [:exit:] Ende der Sitzung +++ [:info:] Anzeige einer Hilfe-Datei +++ [:Dokumentation:yelp] Anzeigen der Systemhilfe +++ [:man:] Ausgabe der Handbuchseite zu einem Befehl oder einer Anwendung ("manual") +++ [:ln:] Link zu einer Datei oder einem Verzeichnis ("link") +++ [:ls:] Auflistung von Dateien ("list") +++ [:exa:] moderne Alternative zu ls +++ [:mkdir:] Erzeugung von Verzeichnissen ("make directory") +++ [:mmv:] Multiple move (Datei-Mehrfachoperationen mit Hilfe von Wildcard-Mustern) +++ [:mv:] Kopieren einer Datei und Löschen der Ursprungsdatei ("move"); mv im aktuellen Verzeichnis ausgeführt: Umbenennung einer Datei +++ [:pwd:] Anzeige des aktuellen Verzeichnisses ("print working directory") +++ [:rm:] Löschen von Dateien und Verzeichnisse ("remove") +++ [:rmdir:] Löschen eines leeren Verzeichnisses ("remove directory") +++ [:sudo:] Root-Rechte für den Benutzer ("substitute user do") +++ [:sudo#Terminal-Ausfuehrung-mit-Passwort-des-Zielbenutzers:su] Befehle unter anderem Nutzer und mit dessen Passwort ausführen +++ [:touch:] Änderung der Zugriffs- und Änderungszeitstempel einer Datei oder eines Verzeichnisses (auch: Erstellen von Dateien) +++ [:unlink:] Löschen einer Datei +++ [:Shell/Umleitungen:Umleitungen] Umleitung von Ausgaben }}} = Netzwerk = {{{#!vorlage Tabelle Befehl Beschreibung +++ [:arpwatch:] Programm zur Erkennung von ARP-Spoofing im lokalen Netzwerk +++ [:dig:] Namensauflösung (DNS) +++ [:Finger:] Abfrage von Benutzerinformationen über das Finger-Protokoll +++ [:iwconfig:] Werkzeug für WLAN-Schnittstellen +++ [:ip:] Anzeigen und Konfiguration von Netzwerkgeräten. Nachfolger von [wikipedia:Ifconfig:ifconfig] +++ [:iw:] der Nachfolger von iwconfig +++ [:netstat:] Auflistung offener Ports und bestehender Netzwerkverbindungen ("network statistics") +++ [:ping:] Prüfen der Erreichbarkeit anderer Rechner über ein Netzwerk +++ [man_de:route:] {de} Anzeige und Änderung der Route (Routingtabelle) +++ [man:ss:] der Nachfolger von netstat ("socket statistics") +++ [:traceroute:] Routenverfolgung und Verbindungsanalyse }}} = Dateiwerkzeuge = {{{#!vorlage Tabelle Befehl Beschreibung +++ [:basename:] Rückgabe des Dateinamens +++ [:blkid:] Anzeige der [:UUID:] angeschlossener Laufwerke (siehe auch [:lsblk:]) +++ [:Textdateien_vergleichen#comm:comm] Zeilenweiser Vergleich sortierter Dateien +++ [:choose:] Alternative zu cut +++ [:cut:] Spaltenweise Manipulation von Textdaten +++ [:dd:] Bit-genaues Kopieren von Datenträgern +++ [:diff:] Vergleich des Inhalts zweier Dateien (siehe auch [:patch:] für das Anwenden eines "Diffs") +++ [:dirname:] Rückgabe des Pfades +++ [:find:] Suche nach Dateien +++ [:grep:] Durchsuchen von Dateien +++ [:locate:] Suche nach Dateien mit Hilfe der Datenbank ''locatedb'' +++ [:lsblk:] Anzeige von Informationen zu Speichermedien ("list block devices") +++ [:lsof:] Anzeige offener Dateien ("list open files") +++ [:md5sum:] Ermittlung und Überprüfung der MD5-Prüfsumme von Dateien +++ [:mount:]/[:mount#umount:umount] Ein- und Aushängen eines Dateisystems +++ [:paste:] Daten aus mehreren Dateien spaltenweise zusammenführen +++ [:rename:] Umbenennung von Dateien +++ [:rsync:] Datensynchronisation +++ [:shred:] Sicheres Löschen von Daten +++ [:sort:] Sortieren von Dateien nach vorgegebenen Kriterien +++ [:split:] Aufteilung großer Dateien in mehrere kleine +++ [:sync:] Schreibt alle Daten aus dem Linux Schreibpuffer auf den Datenträger +++ [:tre-agrep:] Werkzeug zur "unscharfen" Suche mit regulären Ausdrücken +++ [:tree:] Verzeichnishierarchie rekursiv als Baumstruktur anzeigen +++ [:uniq:] Ausgabe einer sortierten Datei ohne doppelte Zeilen +++ [:locate:updatedb] Aktualisierung der locate-Datenbank ("update database") }}} = Pager = {{{#!vorlage Tabelle Befehl Beschreibung +++ [:head:] Ausgabe der ersten Zeilen einer Datei +++ [:less:] Scrollfähige Anzeige einer Textdatei +++ [:more:] Wie `less`, aber ohne die Fähigkeit, rückwärts zu scrollen +++ [:tail:] Ausgabe der letzten Zeilen einer Datei }}} = Prozesssteuerung = {{{#!vorlage Tabelle Befehl Beschreibung +++ [:Shell/Prozesssteuerung: Hintergrundprozesse] Prozesse im Hintergrund laufen lassen +++ [:nice:] Vorgabe der Priorität eines Prozesses +++ [:nohup:] Lösung eines Prozesses aus der Sitzung, die ihn aufruft +++ [:pgrep:] Anzeige der Prozessidentifikationsnummer(n) zu gegebenen Prozessnamen/regulärem Ausdruck +++ [:pidof:] Anzeige der Prozessidentifikationsnummer(n) zu gegebenen Prozessnamen +++ [:renice:] Änderung der Priorität eines Prozesses zur Laufzeit +++ [:schedutils:] Befehle für die fortgeschrittene Prozesskontrolle }}} = Rechte = {{{#!vorlage Tabelle Befehl Beschreibung +++ [:chattr:] Veränderung von Datei-Attributen und Rechten auf ext2- und ext3-Dateisystemen ("change attributes") +++ [:chgrp:] Festlegung der Gruppenzugehörigkeit von Dateien ("change group") +++ [:chmod:] Veränderung der Zugriffsrechte von Dateien ("change mode") +++ [:chown:] Festlegung des Besitzers und der Gruppenzugehörigkeit von Dateien ("change ownership") }}} = Systemüberwachung = {{{#!vorlage Tabelle Befehl Beschreibung +++ [:dmesg:] Kernelmeldungen auf den Bildschirm ausgeben lassen; nützlich bei der Fehlersuche +++ [:at:] Einstellung von einmalig durchzuführenden zeitgesteuerten Skript-/Befehlsaufrufen +++ [:Cron:crontab] Einstellung von zeitgesteuerten Skript-/Befehlsaufrufen +++ [:df:] Ausgabe des Speicherplatzes aller eingehängten Laufwerke ("disk free") +++ [:duf:] Ausgabe des Speicherplatzes aller eingehängten Laufwerke in Tabellenform +++ [:du:] Ausgabe des Speicherverbrauchs von Verzeichnissen ("disk usage") +++ [:free:] Ausgabe der Arbeitsspeicherauslastung +++ [:kill:] Beendigung eines durch die Prozess-ID gekennzeichneten Prozesses +++ [:killall:] Beendigung von nach dem Prozessnamen gekennzeichneten Prozessen +++ [:pkill:] Beendigung eines nach seinem Namen/durch einen regulären Ausdruck gekennzeichneten Prozesses +++ [:ps:] Ausgabe aller laufenden Prozesse ("process status") +++ [:pstree:] Ausgabe aller laufenden Prozesse in Baumform +++ [:script:] Terminalsitzungen mitschneiden (siehe auch [:scriptreplay:]) +++ [:stat:] Zeitstempel von Dateien und Ordnern anzeigen +++ [:top:] Ausgabe der Prozessorauslastung +++ [:uptime:] Angabe der Laufzeit und Auslastung des Computers +++ [:vmstat:] erste Analyse von Engpässen }}} = Nützliche Befehle ohne Kategorie = {{{#!vorlage Tabelle Befehl Beschreibung +++ [:alias:] Vergabe von Kurznamen an Kommandos +++ [wikipedia_en:Apropos (Unix):apropos] Anzeige von Hilfe-Themen zu einem Stichwort +++ [:chroot:] Ausführung eines Kommandos/einer interaktiven Shell in einem angegebenen Wurzelverzeichnis +++ [:clear:] Löschen des momentanen Bildschirminhalts +++ [:dircolors:] Anpassung der Farben von `ls` +++ [:jc:] Konvertierung von Programmausgaben nach JSON oder YAML +++ [:logger:] Einträge in [:Logdateien:/var/log/syslog] erstellen +++ [:lscpu:] Anzeige von Prozessor-Informationen ("list cpu") +++ [:lshw:] Anzeige von Hardware-Informationen ("list hardware") +++ [:Gerätemanager#PCI-bzw.-PCMCIA:lspci] Anzeige von Informationen zur PCI-Hardware ("list pci") +++ [:Gerätemanager#USB:lsusb] Anzeige von Informationen zur USB-Hardware ("list usb") +++ [:info#pinfo:pinfo] Anzeige einer Hilfe-Datei an (ähnlich wie [:info:]) +++ [:pv:] Ein Programm zum Betrachten des Fortschritt von Operationen durch Pipes +++ [:Herunterfahren#halt-reboot-poweroff:reboot] Rechner neu starten +++ [:rtcwake:] Rechner automatisch Starten bzw. Herunterfahren +++ [:sed:] Nicht-interaktiver Editor +++ [:seq:] Sequenzen von Zahlen im Terminal erzeugen +++ [:Herunterfahren#shutdown:shutdown] Herunterfahren des Systems +++ [:sleep:] Pausieren von Prozessen +++ [:tasksel:] Installationshilfe für die Kommandozeile +++ [:Shell/tee:] Eingaben auf mehrere Ausgaben verteilen +++ [:time:] Messung der Laufzeit von (Shell-)Befehlen +++ [:tr:] Lesen, Umwandeln und Neuausgabe von Zeichenkombinationen ("translate"/"transliterate") +++ [:uname:] Ausgabe von Systeminformationen ("unix name") +++ [:wall:] Mitteilung an alle auf dem System eingeloggten Nutzer senden +++ [:watch:] Periodischer Aufruf anderer Kommandos +++ [:wc:] Zählung von Wörten, Zeilen und Zeichen in Textdateien ("word count") +++ [wikipedia_en:whatis:whatis] Anzeige der Kurzbeschreibung eines Programms +++ [man_de:whereis:] {de} Sucht das Binary (ausführbare Datei), den Quellcode und die man-Page eines Programms +++ [:which:] Anzeige der Datei, die bei Eingabe eines Befehls ausgeführt wird +++ [:who:] Anzeige von Informationen über angemeldete Benutzer +++ [:whoami:] Anzeige des Benutzer, unter dem gerade gearbeitet wird +++ [:Shell/xargs:xargs] Anwendung eines Kommandos auf eine Liste von Dateien/Parametern, die von der Standardeingabe oder einer Datei kommen }}} = „Unnütze“ Befehle = {{{#!vorlage Tabelle Befehl Beschreibung +++ [:Easter_Eggs#Ddate:ddate] Ausgabe des Datums im discordischen Format +++ [:fortune:] Ausgabe kurzer Sinnsprüche +++ [:Easter_Eggs#sl:sl] Spaßprogramm (bei versehentlich verdreht eingegebenem [:ls:]) }}} = Links = * [https://helmbold.de/artikel/Linux-auf-einem-Blatt.pdf Linux auf einem Blatt]{dl} {de} - PDF * [http://www.321tux.de/2010/03/shell-befehlsuebersicht-fuer-einsteiger/ Shell-Befehlsübersicht für Einsteiger] {de} - als PDF oder ODT (LibreOffice) * [https://www.freiesoftwareog.org/downloads/LinuxUbuntuReferenzblattDeutsch.pdf Ubuntu/Linux Kurzreferenz] {dl} {de} - deutsche Übersetzung als PDF * Unix Toolbox: * [http://cb.vu/unixtoolbox.xhtml Unix/Linux/BSD Unix Toolbox] {en} – Referenz * [http://cb.vu/unixtoolbox.pdf Unix/Linux/BSD Unix Toolbox] {dl} {en} – Referenz als PDF * [http://cb.vu/unixtoolbox.book.pdf Unix/Linux/BSD Unix Toolbox] {dl} {en} – Referenz als PDF (Booklet) # tag: Shell, Übersicht