Shell-Spickzettel: Unterschied zwischen den Versionen
Pierre (Diskussion | Beiträge) |
→Benutzerverwaltung: adduser -> useradd |
||
(32 dazwischenliegende Versionen von 13 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
Dieser Artikel soll eine kurze Übersicht über die wichtigsten Bash- | Dieser Artikel soll eine kurze Übersicht über die wichtigsten Bash-Befehle für administrative Aufgaben geben. | ||
== Hilfe == | == Hilfe == | ||
Zeile 6: | Zeile 6: | ||
|style="width:70%;background-color:#E5E5E5"|'''Beschreibung''' | |style="width:70%;background-color:#E5E5E5"|'''Beschreibung''' | ||
|- | |- | ||
|man [section] | |man [section] Befehl | ||
|Handbuchseite zu | |Handbuchseite zu Befehl[(section)] anzeigen | ||
|- | |- | ||
|whatis | |whatis Befehl | ||
|Kurzinfo zu | |Kurzinfo zu Befehl | ||
|- | |- | ||
|apropos | |apropos Befehl | ||
|whatis-Datenbank nach | |whatis-Datenbank nach Befehl durchsuchen | ||
|- | |- | ||
|} | |} | ||
== | == Verzeichnisverwaltung == | ||
{|border="1" style="width:100%" | {|border="1" style="width:100%" | ||
|style="width:30%;background-color:#E5E5E5"|'''Befehl''' | |style="width:30%;background-color:#E5E5E5"|'''Befehl''' | ||
|style="width:70%;background-color:#E5E5E5"|'''Beschreibung''' | |style="width:70%;background-color:#E5E5E5"|'''Beschreibung''' | ||
|- | |||
|''ls [-l] [-a] [-la] [Pfad]'' | |||
|Verzeichnis Inhalt anzeigen, ohne Angabe eines Pfades wird das aktuelle Verzeichnis gelistet; -l: ausführliche Liste, -a: auch versteckte Dateien Zeigen | |||
|- | |||
|''cd [Pfad]'' | |||
|gehe zu [Pfad] | |||
|- | |||
|''cd'' | |||
|ins home Verzeichnis des aktuellen users wechseln | |||
|- | |- | ||
|mkdir [gewünschter Name] | |mkdir [gewünschter Name] | ||
|Verzeichnis erstellen | |Verzeichnis erstellen | ||
|- | |||
|pwd | |||
|aktuelles Arbeitsverzeichnis anzeigen | |||
|- | |- | ||
|rmdir [Pfad] | |rmdir [Pfad] | ||
|Verzeichnis löschen | |Verzeichnis löschen | ||
|- | |- | ||
| | |} | ||
| | |||
== Dateiverwaltung == | |||
{|border="1" style="width:100%" | |||
|style="width:30%;background-color:#E5E5E5"|'''Befehl''' | |||
|style="width:70%;background-color:#E5E5E5"|'''Beschreibung''' | |||
|- | |||
|chmod Rechte Datei | |||
|Rechte für Datei/Verzeichnis ändern | |||
|- | |||
|chgrp Gruppe Datei | |||
|Gruppenzugehörigkeit für Datei/Verzeichnis ändern | |||
|- | |||
|chown User[:Gruppe] Datei | |||
|Besitzer [und Gruppe] der Datei/Verzeichnis ändern | |||
|- | |- | ||
|cp [-a] [-R] Quelle Ziel | |cp [-a] [-R] Quelle Ziel | ||
Zeile 39: | Zeile 64: | ||
|rm [-r] [-f] | |rm [-r] [-f] | ||
|Dateien / Verzeichnisse löschen | |Dateien / Verzeichnisse löschen | ||
|- | |- | ||
|} | |} | ||
Zeile 59: | Zeile 78: | ||
|wie oben aber mit 'i'gnorieren der Groß/Klein Schreibung (-iname bla, findet Bla, bLA, bla ...) | |wie oben aber mit 'i'gnorieren der Groß/Klein Schreibung (-iname bla, findet Bla, bLA, bla ...) | ||
|- | |- | ||
|find [Pfad] -exec | |find [Pfad] -exec Befehl '{}' \; | ||
|ruft | |ruft Befehl mit jeder gefundenen Datei auf | ||
|- | |- | ||
|locate Name | |locate Name | ||
Zeile 68: | Zeile 87: | ||
|Index erneuern | |Index erneuern | ||
|- | |- | ||
|which [Befehl,Skriptname,ausführbare Datei] | |||
|wo befindet sich das Skript/die Datei | |||
|- | |||
|grep 'Ausdruck' [Datei/Wildcard] | |||
|sucht nach 'Ausdruck' in der/den angegebenen Datei/en oder Verzeichnis/sen | |||
|} | |} | ||
== tar- | == tar-Befehle == | ||
{|border="1" style="width:100%" | {|border="1" style="width:100%" | ||
|style="width:30%;background-color:#E5E5E5"|'''Befehl''' | |style="width:30%;background-color:#E5E5E5"|'''Befehl''' | ||
Zeile 82: | Zeile 106: | ||
|- | |- | ||
|tar cjvf bla.tar.bz2 /bla/ | |tar cjvf bla.tar.bz2 /bla/ | ||
|bz2-komprimierte tar-Datei mit dem Namen "bla.tar.bz2" des Ordners " | |bz2-komprimierte tar-Datei mit dem Namen "bla.tar.bz2" des Ordners "bla" erstellen | ||
|- | |- | ||
|tar xjvf bla.tar.bz2 | |tar xjvf bla.tar.bz2 | ||
Zeile 90: | Zeile 114: | ||
|Entpackt ein beliebiges Archiv (Endung=tar, tar.gz, tar.bz) | |Entpackt ein beliebiges Archiv (Endung=tar, tar.gz, tar.bz) | ||
|- | |- | ||
|tar --bzip2 -tvf bla.tar.bz2 | |||
|Zeigt den Inhalt des Archives bla.tar.bz2 an | |||
|} | |} | ||
Zeile 97: | Zeile 123: | ||
|style="width:70%;background-color:#E5E5E5"|'''Beschreibung''' | |style="width:70%;background-color:#E5E5E5"|'''Beschreibung''' | ||
|- | |- | ||
|''alias [name[= | |''alias [name[=Befehl]]'' | ||
|Alternative (z.B. Abkürzung) für " | |Alternative (z.B. Abkürzung) für "Befehl" einrichten. | ||
|- | |- | ||
|''unalias [name des alias]'' | |''unalias [name des alias]'' | ||
Zeile 110: | Zeile 136: | ||
|style="width:70%;background-color:#E5E5E5"|'''Beschreibung''' | |style="width:70%;background-color:#E5E5E5"|'''Beschreibung''' | ||
|- | |- | ||
|'' | |''useradd [username]'' | ||
| | |Benutzer [username] erstellen, z.B. {{ic|useradd -m -g users -s /bin/bash [username]}} | ||
|- | |||
|''userdel -r [username]'' | |||
|Benutzer [username] löschen inkl. Home-Verzeichnis und Mail-Spooler | |||
|- | |||
|''id'' | |||
|Benutzername und dazugehörige Gruppen anzeigen inkl. UID und GID | |||
|- | |- | ||
|''passwd'' | |''passwd'' | ||
|Passwort des aktuellen Benutzers ändern | |Passwort des aktuellen Benutzers ändern | ||
|- | |||
|''who'' | |||
|Es wird angezeigt wer alles auf dem System eingeloggt ist | |||
|- | |||
|''whoami'' | |||
|Es wird angezeigt als welcher Benutzer man eingeloggt ist | |||
|- | |||
|''gpasswd -a [username] [group]'' | |||
|Benutzer [username] zur Gruppe [group] bzw. zu den Gruppen [group1,group2,group3] hinzufügen | |||
|- | |- | ||
|} | |} | ||
Zeile 135: | Zeile 176: | ||
|sendet SIGTERM an PID, beendet sanft | |sendet SIGTERM an PID, beendet sanft | ||
|- | |- | ||
|''pkill -KILL'' | |''pkill -KILL PID'' | ||
|sendet SIGKILL an PID, beendet gewaltsam | |sendet SIGKILL an PID, beendet gewaltsam | ||
|- | |- | ||
Zeile 144: | Zeile 185: | ||
|Prozesse der laufenden Sitzung anzeigen | |Prozesse der laufenden Sitzung anzeigen | ||
|- | |- | ||
| | |''Befehl &'' | ||
| | |Befehl im Hintergrund starten | ||
|- | |- | ||
|''Strg-Z'' | |''Strg-Z'' | ||
Zeile 169: | Zeile 210: | ||
|style="width:70%;background-color:#E5E5E5"|'''Beschreibung''' | |style="width:70%;background-color:#E5E5E5"|'''Beschreibung''' | ||
|- | |- | ||
|''less'' | |''less (Datei)'' | ||
| | |Interaktives Betrachten von Dateien oder Streams (kann auch als Pipe verwendet werden - zB.: ls -l <nowiki>|</nowiki> less | ||
|- | |- | ||
|''grep | |''grep Muster'' | ||
|gibt Zeilen aus, die | |gibt Zeilen aus, die auf Muster passen | ||
|- | |- | ||
|''sort'' | |''sort'' | ||
|sortiert alphabetisch | |sortiert Zeilen alphabetisch | ||
|- | |- | ||
|} | |} | ||
== Arch-Spezifische Befehle == | |||
== Arch-Spezifische | |||
{|border="1" style="width:100%" | {|border="1" style="width:100%" | ||
|style="width:30%;background-color:#E5E5E5"|'''Befehl''' | |style="width:30%;background-color:#E5E5E5"|'''Befehl''' | ||
Zeile 213: | Zeile 253: | ||
|''pacman -Rs'' | |''pacman -Rs'' | ||
|Paket incl. seiner Abhängigkeiten deinstallieren (Vorsicht: manuell installierte Pakete werden NICHT mit deinstalliert!) | |Paket incl. seiner Abhängigkeiten deinstallieren (Vorsicht: manuell installierte Pakete werden NICHT mit deinstalliert!) | ||
|- | |||
|''pacman -Q'' | |||
|Alle installierten Pakete inklusive Versionsnummer anzeigen | |||
|- | |||
|''pacman -Qq'' | |||
|Alle installierten Pakete ohne Versionsnummer anzeigen | |||
|- | |- | ||
|''pacman -V (paket)'' | |''pacman -V (paket)'' | ||
|Versionsnummer eines Paketes ermitteln | |Versionsnummer eines Paketes ermitteln | ||
|- | |||
|''pacman -Rcsn `pacman -Qdtq`'' | |||
|alle verwaisten Pakete löschen | |||
|- | |- | ||
|} | |} | ||
== noch nicht eingeordnet == | == noch nicht eingeordnet == | ||
{|border="1" style="width:100%" | {|border="1" style="width:100%" | ||
Zeile 226: | Zeile 275: | ||
|''df [-h]'' | |''df [-h]'' | ||
|Plattenbelegung anzeigen | |Plattenbelegung anzeigen | ||
|- | |||
|''df -T[h]'' | |||
|Plattenbelegung mit Typ anzeigen | |||
|- | |- | ||
|''du -sch'' | |''du -sch'' | ||
|Größe aller Dateien des aktuellen Verzeichnisses anzeigen | |Größe aller Dateien des aktuellen Verzeichnisses anzeigen | ||
|- | |- | ||
|'' | |''free'' | ||
| | |zeigt den Status des physikalischen und virtuellen Arbeitsspeichers an | ||
|- | |- | ||
|''watch -d (Befehl)'' | |||
|führt ''Befehl'' alle zwei Sekunden aus und hebt Änderungen in der Ausgabe hervor | |||
|} | |} | ||
== Siehe auch == | |||
* [[bash|Wikiartikel zur Bourne Again Shell]] | |||
[[Kategorie:Konsole]] | |||
[[Kategorie: | |||
Aktuelle Version vom 5. Februar 2013, 18:08 Uhr
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 |
Verzeichnisverwaltung
Befehl | Beschreibung |
ls [-l] [-a] [-la] [Pfad] | Verzeichnis Inhalt anzeigen, ohne Angabe eines Pfades wird das aktuelle Verzeichnis gelistet; -l: ausführliche Liste, -a: auch versteckte Dateien Zeigen |
cd [Pfad] | gehe zu [Pfad] |
cd | ins home Verzeichnis des aktuellen users wechseln |
mkdir [gewünschter Name] | Verzeichnis erstellen |
pwd | aktuelles Arbeitsverzeichnis anzeigen |
rmdir [Pfad] | Verzeichnis löschen |
Dateiverwaltung
Befehl | Beschreibung |
chmod Rechte Datei | Rechte für Datei/Verzeichnis ändern |
chgrp Gruppe Datei | Gruppenzugehörigkeit für Datei/Verzeichnis ändern |
chown User[:Gruppe] Datei | Besitzer [und Gruppe] der Datei/Verzeichnis ändern |
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 |
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 |
which [Befehl,Skriptname,ausführbare Datei] | wo befindet sich das Skript/die Datei |
grep 'Ausdruck' [Datei/Wildcard] | sucht nach 'Ausdruck' in der/den angegebenen Datei/en oder Verzeichnis/sen |
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 "bla" 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) |
tar --bzip2 -tvf bla.tar.bz2 | Zeigt den Inhalt des Archives bla.tar.bz2 an |
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 |
useradd [username] | Benutzer [username] erstellen, z.B. useradd -m -g users -s /bin/bash [username]
|
userdel -r [username] | Benutzer [username] löschen inkl. Home-Verzeichnis und Mail-Spooler |
id | Benutzername und dazugehörige Gruppen anzeigen inkl. UID und GID |
passwd | Passwort des aktuellen Benutzers ändern |
who | Es wird angezeigt wer alles auf dem System eingeloggt ist |
whoami | Es wird angezeigt als welcher Benutzer man eingeloggt ist |
gpasswd -a [username] [group] | Benutzer [username] zur Gruppe [group] bzw. zu den Gruppen [group1,group2,group3] hinzufügen |
Prozesse
Befehl | Beschreibung |
ps | Prozesse anzeigen |
ps aux | alle Prozesse anzeigen |
pgrep Prozess | "Prozess" suchen (liefert PID) |
pkill PID | sendet SIGTERM an PID, beendet sanft |
pkill -KILL PID | 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
Befehl | Beschreibung |
less (Datei) | Interaktives Betrachten von Dateien oder Streams (kann auch als Pipe verwendet werden - zB.: ls -l | less |
grep Muster | gibt Zeilen aus, die auf Muster passen |
sort | sortiert Zeilen alphabetisch |
Arch-Spezifische Befehle
Befehl | Beschreibung |
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 -Q | Alle installierten Pakete inklusive Versionsnummer anzeigen |
pacman -Qq | Alle installierten Pakete ohne Versionsnummer anzeigen |
pacman -V (paket) | Versionsnummer eines Paketes ermitteln |
pacman -Rcsn `pacman -Qdtq` | alle verwaisten Pakete löschen |
noch nicht eingeordnet
Befehl | Beschreibung |
df [-h] | Plattenbelegung anzeigen |
df -T[h] | Plattenbelegung mit Typ anzeigen |
du -sch | Größe aller Dateien des aktuellen Verzeichnisses anzeigen |
free | zeigt den Status des physikalischen und virtuellen Arbeitsspeichers an |
watch -d (Befehl) | führt Befehl alle zwei Sekunden aus und hebt Änderungen in der Ausgabe hervor |