Shell-Spickzettel

Aus wiki.archlinux.de

Dieser Artikel soll eine kurze Übersicht über die wichtigsten Bash-Befehle für administrative Aufgaben geben.

Hilfe

Befehl Beschreibung
man [section] Befehl Handbuchseite zu Befehl[(section)] anzeigen
whatis Befehl Kurzinfo zu Befehl
apropos Befehl whatis-Datenbank nach Befehl durchsuchen

Dateiverwaltung

Befehl Beschreibung
mkdir [gewünschter Name] Verzeichnis erstellen
rmdir [Pfad] Verzeichnis löschen
pwd aktuelles Arbeitsverzeichnis anzeigen
cp [-a] [-R] Quelle Ziel Datei kopieren
mv [-f] Quelle Ziel Datei verschieben bzw. innerhalb eines Verzeichnisses angewendet = umbenennen
rm [-r] [-f] Dateien / Verzeichnisse löschen
chmod Rechte Datei Rechte für Datei ändern
chown User Datei Besitzer der Datei ändern

Suchen

Befehl Beschreibung
find [Pfad] -name 'Name' sucht Name (kann Wildcards enthalten) rekursiv unter Pfad
find [Pfad] -iname 'Name' wie oben aber mit 'i'gnorieren der Groß/Klein Schreibung (-iname bla, findet Bla, bLA, bla ...)
find [Pfad] -exec Befehl '{}' \; ruft Befehl mit jeder gefundenen Datei auf
locate Name schnelle (indexbasierte) Suche
updatedb Index erneuern

tar-Befehle

Befehl Beschreibung
tar cvf bla.tar /blub tar-Datei mit dem Namen "bla.tar" des Ordners "/blub" erstellen
tar xvf bla.tar tar-datei "bla.tar" entpacken
tar cjvf bla.tar.bz2 /bla/ bz2-komprimierte tar-Datei mit dem Namen "bla.tar.bz2" des Ordners "blub" erstellen
tar xjvf bla.tar.bz2 bz2-komprimierte tar-Datei mit dem Namen "bla.tar.bz2" entpacken
tar xf bla.Endung Entpackt ein beliebiges Archiv (Endung=tar, tar.gz, tar.bz)

Bash-Vereinfachung

Befehl Beschreibung
alias [name[=befehl]] Alternative (z.B. Abkürzung) für "befehl" einrichten.
unalias [name des alias] Alias löschen

Benutzerverwaltung

Befehl Beschreibung
adduser [username] neuen User [username] erstellen
passwd Passwort des aktuellen Benutzers ändern

Prozesse

ps -> Prozesse anzeigen
ps aux -> alle Prozesse anzeigen
pgrep Prozess -> "Prozess" suchen (liefert PID)
pkill PID -> sendet SIGTERM an PID, beendet sanft
pkill -KILL -> sendet SIGKILL an PID, beendet gewaltsam
top -> Live-Prozesstabelle anzeigen
jobs -> Prozesse der laufenden Sitzung anzeigen
Befehl & -> Befehl im Hintergrund starten
Strg-Z -> laufenden Prozess unterbrechen
fg -> setzt den zuletzt unterbrochenen Prozess fort
bg -> setzt den zuletzt unterbrochenen Prozess im Hintergrund fort
Strg-C -> laufenden Prozess beenden
killall [-SIG] Prozess -> SIGnal (default: SIGTERM) an alle gefundenen Prozesse senden (VORSICHT auf anderen Systemen!)

Filter

less -> zeigt seitenweise an (z.B. ls | less)
grep Ausdruck -> gibt Zeilen aus, die Ausdruck "matchen"
sort -> sortiert alphabetisch

Arch-Spezifische Befehle

makepkg -> Paket aus einer PKGBUILD erstellen

abs -> abs-tree updaten

makeworld -> system mit Hilfe von abs komplett neu compilieren

pacman -Syu -> komplettes Systemupdate

pacman -S (paket) - Programm mittels pacman installieren. Um mehrere Pakete zu installieren, einfach die Namen durch Leerzeichen getrennt hintereinander auflisten

pacman -Sc -> veraltete Pakete aus dem pacman-cache löschen

pacman -Scc -> alle Pakete aus dem pacman-cache löschen

pacman -Qe -> verwaiste Pakete anzeigen (Vorsicht: manuell installierte Pakete werden NICHT mit aufgelistet!)

pacman -Rs -> Paket incl. seiner Abhängigkeiten deinstallieren (Vorsicht: manuell installierte Pakete werden NICHT mit deinstalliert!)

pacman -V (paket) -> Versionsnummer eines Paketes ermitteln

noch nicht eingeordnet

df [-h] -> Plattenbelegung anzeigen
du -sch -> Größe aller Dateien des aktuellen Verzeichnisses anzeigen

ls [-l] [-a] [-la] [Pfad] -> Verzeichnis Inhalt anzeigen, ohne Angabe eines Pfades wird das aktuelle Verzeichnis gelistet
cd [Pfad] -> gehe zu [Pfad]
cd -> ins home Verzeichnis des aktuellen users wechseln

who -> anzeigen wer alles eingeloggt ist
whoami -> anzeigen, als welcher User man eingeloggt ist
id -> Benutzername und Gruppen anzeigen