**zurück zu:** [[software:linux:linux]] ====== Shell Befehle ====== ===== Grundkommandos ===== ^Befehl^Zusatz^Beschreibung^Beispiel^ |sudo|su|wechselt aktuellen Benutzer mit Passwort des Zielbenutzers|sudo su(kann immer benutzt werden) config:[[https://wiki.ubuntuusers.de/sudo/Konfiguration/|sudo]]| |help|(Befehl) --help|gibt eine Hilfeseite zum Befehl aus|grep --help| |man|Befehl|Zeigt die "Anleitung" des Befehls an. Mehr zu man: [[https://wiki.ubuntuusers.de/man/ | Man]]|man cat| |apt-get install|packetname|Installiert ein Packet,Prog.|apt-get install sudo, installiert die Admin verwaltung| |wget|url|aus Terminal, Dateidown-Upload|mehr dazu:[[https://wiki.ubuntuusers.de/wget/ |wget]]| |dpkg|-i|installiert das packet|dpkg -i nano| |:::|-r|Entfernt das als Argument übergebene genannte Paket. Wichtig: Der Name des Pakets, nicht der Dateiname muss angegeben werden. Eventuell vom Programm angelegte Konfigurationsdateien bleiben erhalten. || |:::|-l|Ruft dpkg-query auf und gibt eine Liste mit Status, Version und einer Kurzbeschreibung des Pakets aus. Statt des Namens kann auch ein regulärer Ausdruck angegeben werden. Wird kein Argument übergeben, werden alle installierten Pakete aufgelistet.|| |:::|-P|Entfernt das genannte Paket inklusive der Konfigurationsdateien. || |:::|-R|Statt eines Pfades zu einer .deb kann mit -R auch ein Verzeichnis angegeben werden, die gewählte Operation wird dann auf alle Pakete im Verzeichnis angewandt. || |cd|Verzeichnis|cd steht für change directory mehr:[[https://wiki.ubuntuusers.de/cd/ | cd]]|**cd ../user2** Wechselt ins übergeordnete Verzeichnis und von dort nach user2, also z.B. von /home/user nach /home/user2| |cp|-rv Verzeichnis,datei ZIELPFAD|kopiert dateien und Ordner mit unterverzeichnis(Rekursiv), zeigt fortschritt an|cp -rv test /home/benutzer/Bilder/test| |rmdir [OPTION] VERZEICHNIS|-p, -v |Alle Elternverzeichnisse, die während des Ablaufs des Programms geleert werden, werden mitgelöscht, Vorgang wird in der Shell angezeigt.|| |ls|-A oder --all|steht für list, zeigt Versteckte Dateien, Verzeichnisse an|ls -la alle Dateien, auch die versteckten, in Langform ausgeben, mehr: [[https://manpages.ubuntu.com/cgi-bin/search.py?lr=lang_de&q=ls | Manpage]]| |cat|-b / -n|von concatenate = verketten, verknüpfen, ist ein pager. Gibt anfang nicht leere zeile/anfang jeder, Zeilennummer aus.|catSeite_1.txt Seite_2.txt > text_komplett.txt,hängt seite2 an seite1 an, spei.intextkompl.[[https://wiki.ubuntuusers.de/cat/ | cat]]| |cut|cut -d: -f1 /etc/passwd|extrahiert zeilen+spalten|Beispiel: gibt die erste spalte der passwd aus, Benutzernamen| |grep|suchwort, --colour[=Wann], --color[=Wann]|Markiert Treffer farbig. Wann kann dabei "never", "always" oder "auto" sein.|| |:::|-H -i|Gibt dateiname,vor ausgabe aus+unterscheidet nicht zw. gross.kleinsch.|| |:::|-n|Zeilennummer anfang|| |egrep|egrep -rni -e "ubuntuusers" /var/www|Rekursiv=im Verzeichnis alle Dateien suchen.|Findet rekursiv (-r) alle Dateien im Verzeichnis /var/www, in denen die Zeichenkette ubuntuusers auftritt, unabhängig von Groß- und Kleinschreibung (Option -i). Die Treffer werden unter Angabe der Datei und der Zeilennummer (Option -n) auf der Standardausgabe ausgegeben.| |wc|||| |whereis|programmname|gibt den installpfad des ausführbaren Programmes aus.| |etc/issue|gibt die linux version aus| | |hostnamectl|das gleiche aber detailierter| | |/dev/null/|ausgabe,etwas > /dev/null|leitet eine Ausgabe oder Fehler ins "nichts"|cp /dev/null "test.txt", erzeugt eine leere Datei| ---- ===== Programmverwaltung ===== ^Befehl^Zusatz^Beschreibung^ |**apt**|update|Neueinlesen der Paketlisten| |:::|upgrade|Installierte Pakete wenn möglich auf eine verbesserte Version aktualisieren. Um geänderte Abhängigkeiten zu erfüllen, werden ge­ge­be­nen­falls auch neue Pakete installiert.| |:::|full-upgrade \\ dist-upgrade|Wie upgrade, nur können bei dem Vorgang auch Pakete entfernt werden. Alternativ kann statt full-upgrade auch der Befehl dist-upgrade verwendet werden. Das Ergebnis ist identisch, allerdings ist dist-upgrade in der Hilfe und der Man-Page von apt nicht dokumentiert.| |:::|install PAKETNAME, oder mit install /PFAD/ZUM/PAKET|installiert das Paket PAKETNAME, oder installiert lokales paket| |:::|remove PAKETNAME|deinstalliert das Paket PAKETNAME| |:::|purge PAKETNAME|wie remove, es werden aber zusätzlich auch alle Konfigurationsdateien gelöscht| |:::|autoremove|deinstalliert alle automatisch installierten Pakete, die nicht mehr benötigt werden und keine Abhängigkeiten mehr zu anderen Paketen haben| |:::|**suchen apt**| |:::|search SUCHBEGRIFF|Zeigt alle Pakete an, in deren Namen oder Beschreibung der Begriff SUCHBEGRIFF vorkommt. Als Suchbegriff kann auch ein regulärer Ausdruck verwendet werden.| |:::|show paketname|zeigt Informationen zum Paket PAKETNAME an| |:::|list SUCHMUSTER [OPTION]|Listet alle Paketnamen auf, deren Paketname auf das Suchmuster SUCHMUSTER passen. Das Suchmuster kann dabei auch ein [[https://en.wikipedia.org/wiki/Glob_(programming)|Glob-Pattern]] sein. Als Optionen stehen z.B. --installed (listet nur Pakete auf, die auch installiert sind) und --upgradeable (listet nur Pakete auf, für die eine aktuelle Version in den Paketquellen bereit steht) zur Verfügung.| |Unterschied apt & apt-get:[[https://wiki.ubuntuusers.de/apt/apt/#Vergleiche-apt-get-apt|apt]]^^| ---- ===== User & Gruppen ===== ^Befehl^Zusatz^Beschreibung^Beispiele^ |adduser|gecos ""|erststellt einen User und überspringt die optionalen Einstellungen. Fügt ebenso einen User einer Gruppe hinzu.|sudo adduser otto, sudo adduser otto test| |useradd|-u=userid \\ -g=user \\ -d=home \\ -s=shell \\ -p=passworterstellung,verschlüsselt \\ test=username|erstellt einen user aber ohne Erstelleditor!, alle Parameter müssen mitgegeben werden.|useradd -u 123 -g users -d /home/test -s /bin/bash -p $(echo mypasswd //PIPE// openssl passwd -1 -stdin) test| |sudogruppe|sudo usermod -aG sudo BENUTZERNAME|fügt den benutzer zur gruppe sudo hinzu.| |deluser|--remove-home bert|deluser entfernt Benutzer ohne home |deluser --remove-home bert entfernt mit Home| |:::|--remove-all-files bert|entfernt alle files|| |:::|--backup|Homeverzeichnis sowie der Mail-Spool gesichert in datei:/BENUTZERNAME.tar.gz|deluser --backup bert| |groupadd/groupdel|-g|erstellt/löscht eine gruppe mit einer id|groupadd eugen -g 50| |groupmod|-n|Benennt die Gruppe um|sudo groupmod -n Berta Anton, Gruppe Anton in Berta umbenennen| |passwd|--all -S|Gibt alle Informationen zu allen Benutzern aus|passwd -S benutzer gibt Info von Benutzer| |:::|Für mehr Beispiele:{{ :software:linux:passwd.png?linkonly |}}| ---- ===== Festplatten&Partitionen ===== ^Befehl^Zusatz^Beschreibung^Beispiele^ |fdisk|option /dev/sda|ruft das Partitionierungsmenü auf|| |:::|m|hilfeseite|| |:::|||| |Angeschl.Geräte.Anzeigen|cat /proc/partitions | |:::|Etwas mehr als liste|sudo **blkid** -o list -w /dev/null| |mount|-l|zeigt die eingehängten Punkte an|mount -l| |:::|sudo+mountpfad+einhängeort|hängt eine partition/festplatte/verzeichnis etc. ein|mount /dev/sdb1/ /media/test/| |:::|sudo+mkdir+mountpfad|erstellt einen Ordner und benutzt den als einhängepunkt|sudo mkdir test /dev/sdb1/| |:::|noch mehr unter folgendem Bild:{{:software:linux:laufwerkstatisch.png?linkonly|}} | um ein Laufwerk statisch nachträglich einzubinden| |umount|sudo+einhängepunkt|Mountet ein Punkt wieder aus|sudo umount /dev/sdb1/| ---- ===== Überwachung ===== ^Befehl^Zusatz^Beschreibung^Beispiele^ |top|für die Hotkeys Bild:{{ :software:linux:hotkeys.png?linkonly |}}|Der Befehl top zeigt eine dynamische Übersicht der auf dem System laufenden Prozesse und die Systemressourcen an. Das Kommandozeilenprogramm ist ein Klassiker, wenn man einen schnellen Überblick benötigt, womit das System gerade beschäftigt ist.|-ic, zeigt nur die aktiven Prozesse+Pfadangabe| |nice|-n prog.|startet ein Programm mit einer Priorität. 20=schlecht -20=beste|nice -n -10 vlc| |renice|-p PID|Programmpriorität wird geändert mit der Programmid|renice -5 -p 1200| |:::|-u,-g|geht auch für benutzer und gruppen, gilt für alle Prozesse!|renice -8 -u martin| |ps|-r,-f,-F|processes liefert eine Momentaufnahme der laufenden Prozesse.|-r nur laufende prozesse,-f,-F detailierte ansicht| |free|||| |df|-h|disk free gibt den freien Festplatten-Platz an. Ausgegeben werden nur eingehängte Partitionen.|df -h gut lesbaredateigrösse| |du|-h|Der Befehl du zeigt dagegen den belegten Festplattenplatz an.|lesbaredateigrösse, mehr beispiele:{{ :software:linux:dubeispiel.png?linkonly |}}| |netstat|||| |journalctl|||| |stress|||| |ping|||| ---- **[[https://wiki.ubuntuusers.de|Wiki.Ubuntu]]** \\ **[[https://wiki.ubuntuusers.de/Shell/Befehls%C3%BCbersicht/|(Alle) Shell Befehle]]** \\ **[[https://wiki.ubuntuusers.de/sudo/|Sudo]]** \\ **[[https://wiki.ubuntuusers.de/Shell/|Übersicht, verschiedene Shells]]** \\ **[[https://wiki.ubuntuusers.de/Shell/Umleitungen/|Umleitungen]]** eigene_Wiki_Seite:**[[software:linux:Umleitung|Umleitung-Befehle]]** \\ **[[http://www.netzmafia.de/skripten/unix/linux_befehle.html|befehlliste]]** \\ ===== === cd === Will man in ein Verzeichnis wechseln, dessen Name Leerzeichen enthält, so muss man diese durch vorangestellte **\** maskieren. Das wird auch automatisch gemacht, wenn man den Pfad wie gewohnt mit Tab ⇆ vervollständigt. Alternativ ist aber auch möglich, den ganzen Pfad unter Anführungszeichen zu setzen. \\ **cd /media/Fotos\ Hawaii** \\ **cd "/media/Fotos Hawaii"** \\ ---- [[https://manpages.ubuntu.com/manpages/disco/de/man6/hauptgericht.6.html | sonstwas]]