Dies ist eine alte Version des Dokuments!
Inhaltsverzeichnis
Linux Essentials
Anforderungskatalog für Linux Essentials Test
Hilfe unter Linux
Zu fast allen Befehlen können über den Parameter -h bzw. –help direkte Hilfen angezeigt werden.
Beispiel:
ls --help
So bekommt man meistens die Parameter in sehr knapper Form angezeigt.
Ausführlichere Hilfe bekommt man über die sogenannten Manuals oder Man-Pages, die über den folgenden Befehl aufgerufen werden.
man ls
Über die Pfeiltasten kann navigiert werden. Mit 'q'1) beendet man das Programm.
sudo -i* interaktive Shell mit „frischer“ Umgebungsudo -sShell mit übernommener Umgebung
type feststellen welcher Type der Befehl hat z.B. /bin/mkdir bzw. echo als built-in Befehl.
Parameter hinter Befehlen
Entweder kurz man -L de_DE ls oder lang man –locale=de_DE ls
~<USERNAME> fremder Home-Ordner
which mkdir gibt den Pfad, der Datei mkdir aus.
file mkdir gibt Informationen zur Datei aus.
Beispiele für Umgang mit Dateien
Wie viele Benutzer gibt es im System?
cat /etc/passwd | grep -c : > anzahl_user
Wie viele Gruppen gibt es im System?
cat /etc/group | grep -c : > anzahl_gruppen
Erstelle eine Liste aller Benutzernamen im System!
cat /etc/passwd | cut -d: -f1 > usernames.txt
Wie viele verschiedene Login-Shells gibt es im System?
cat /etc/passwd | cut -d: -f7 | sort | uniq -c |sort -g -r > shells.txt
Suchen von Dateien nach vorgegebenen Kriterien
#!/bin/bash
# Suche alle Dateien, die nicht root gehören
echo Suche alle Dateien, die nicht root gehören
sudo find / -xdev -type f \! -user root | wc -l
# Suche alle Dateien, die global ausführbar sind.
echo Suche alle Dateien, die global ausführbar sind.
sudo find / -xdev -type f -executable | wc -l
# Suche alle Dateien, die global schreibbar sind.
echo Suche alle Dateine, die globarl schreibbar sind.
sudo find / -xdev -type f -perm /o=w | wc -l
# Suche alle Dateien, die das SUID-Bit gesetzt haben.
echo Suche alle Dateien, die das SUID-Bit gesetzt haben.
sudo find / -xdev -perm -4000 | wc -l
# Im Anschluss ausgeben mit ls -l
sudo find / -xdev -perm -4000 | xargs ls -l
# Oder so innerhalb des find Befehls
sudo find / -xdev -perm -4000 -exec ls -l {} \;
# wichtig: \; muss als Ende für exec durchgereicht werden. Ohne \ würde die bash das ; konsumieren
# oder per for-Schleife
for f in $(sudo find / -xdev -perm -4000) ; do
ls -l $f
done
Exit-Status
Wenn ein Befehl erfolgreich war, dann wird der Exit-Status 0 zurückgegeben. Sonst ungleich 0.
ls * echo $? Ergebnis: 0 ls gibtesnicht echo $? Ergebnis: 2
Man kann den Exit-Status zur Steuerung von weiteren Befehlen nutzen.
echo hallo > gibtes ls gibtes && cat gibtes Ausgabe: hallo rm gibtes ls gibtes && cat gibtes Ausgabe: ls: cannot access gibtes cat Befehl wird nicht mehr ausgeführt.
