\setcounter{LTchunksize}{100} %regulieren der Absatzabstände \chapter{Alphabetische Kommandoübersicht} \label{chap:kommandos} \begin{tabular}{p{3cm}p{12.5cm}} \ntk{0 -9} \ubs{7zip}{erstellt, komprimiert und verschlüsselt Archive} \opt{a}{(add) erstellt ein Archiv} \opt{l}{(list) zeigt den Inhalt eines Archivs an} \opt{t}{(test) prüft ein Archiv auf Konsistenz} \opt{x}{(extract) entpackt ein Archiv} \opt{-p}{verschlüsselt ein Archiv} \bsp{7z a \ttt{/ziel/Archiv1.7z ./Verzeichnis1} -p} \txt{erstellt Archiv1.7z aus dem Ihnalt von Verzeichnis1 und verschlüsselt es} \bsp{7z x \ttt{/ziel/Archiv1.7z}} \tabende{entpackt Archiv1.7z} \end{tabular} \begin{longtable}{p{3cm}p{12.5cm}} \ltk{A} \ubs{a2ps}{erzeugt aus einer Textdatei eine PostScript-Datei, die man auf einem PostScript-Drucker ausdrucken kann} \opt{-1}{wählt das vordefinierte Layout Nr. 1 (verschiedene Layouts sind über -1 bis -9 auswählbar)} \opt{-r}{stellt den Ausgabemodus ein} \opt{-l}{gibt die maximale Zeilenlänge vor} \opt{-o}{gibt die Ausgabedatei an} \bsp{a2ps -1 -r -l \ttt{140} \lll -o \ttt{Datei1.ps Datei2}} \tabende{erzeugt aus Datei2 die Datei.ps mit einer maximalen Zeilenlänge von 140 Zeichen} % \ubs{acroread}{zeigt pdf - Dokumente an} \opt{\small{-toPostScript}}{konvertiert pdf-Dateien zu PostScript} \bsp{acroread \ttt{Datei1.pdf}} \txt{zeigt Datei1.pdf an} \bsp{acroread -toPostScript \ttt{Datei1.pdf Datei2.pdf Verzeichnis1}} \tabende{wandelt Datei1.pdf und Datei2.pdf in PostScript um und speichert die neuen Dateien in Verzeichnis1} \end{longtable} \tabsep \begin{longtable}{p{3cm}p{12.5cm}} \ltk{B} \ubs{bash}{startet eine Shell, wobei Einstellungen des Users berücksichtigt werden (Datei ~/.bashrc wird gelesen)} \tabende{ } % \ubs{bc}{(basic calculator) startet einen Rechner zur Durchführung von Berechnungen und Konvertierung von Zahlen} \opt{-l}{rechnet mit Kommazahlen} \bsp{scale=\tto{8}} \txt{setzt die Anzahl der Nachkommastellen auf 8} \bsp{echo ''(55+73)/3-2/3'' | bc -l} \txt{(55+73)/3-2/3 wird bc zur Berechnung übergeben} \bsp{sqrt (\ttt{256}\lll)} \txt{ermittelt die Quadratwurzel aus 256} \bsp{s (\ttt{33}\lll)} \tabende{ermittelt den Sinus von 33} \end{longtable} \tabsep \begin{longtable}{p{3cm}p{12.5cm}} \ltk{C} \ubs{cal}{Anzeigen des Kalenders} \bsp{cal -m \ttt{3 2008}} \txt{zeigt den Kalender für März 2008 an} \bsp{cal -\ttt{3}m} \txt{zeigt den Kalender für den aktuellen, den vergangenen und den folgenden Monat an} \bsp{cal \ttt{2009}} \tabende{zeigt den Kalender des Jahres 2009 an } % \ubs{cat}{(concatenate) verbindet mehrere Dateien miteinander} \bsp{cat \ttt{Datei1 Datei2} \lll> \ttt{Datei3}} \txt{gibt Datei1 und Datei2 nacheinander aus und schreibt sie in Datei3} \bsp{cat \ttt{Datei1} | grep \ttt{Hans} | grep \ttt{Otto} | grep -v \ttt{Hans-Otto}} \txt{listet Datei1 auf und übergibt sie (|) an eine Reihe von Suchen: zuerst werden alle Zeilen in denen Hans steht extrahiert, dann die mit Otto, dann alle, die Hans-Otto nicht (-v) enthalten.} \bsp{cat -n \ttt{Datei1}} \txt{gibt Datei1 mit vorangestellten Zeilennummern aus} \bsp{cat -vte \ttt{Datei1}} \tabende{macht unsichtbare Zeichen in Datei1 sichtbar, z.B. Tabulator, Leerzeichen am Zeilenende} % \ubs{cd}{(change directory) wechselt in ein anderes Verzeichnis} \bsp{cd \ttt{Verzeichnis1}} \txt{wechselt in Verzeichnis1} %\bsp{cd ..} %\txt{wechselt in das übergeordnete Verzeichnis} \bsp{cd ../..} \txt{wechselt zwei Ebenen nach oben} \bsp{cd} \txt{wechselt ins eigene Homeverzeichnis} \bsp{cd \textasciitilde \ttt{Hans}} \tabende{wechselt ins Homeverzeichnis des Benutzers Hans} % \ubs{chgrp}{(change group) vergibt Rechte an Daten an die angegebene Gruppe} \opt{-R}{(recursive) Verzeichnis mit allen enthaltenen Dateien und Unterverzeichnissen} \bsp{chgrp \ttt{Gruppe1 Datei1}} \txt{ordnet Datei1 Gruppe1 zu} \bsp{chgrp -R \ttt{Gruppe2 Verzeichnis1}} \tabende{ordnet Verzeichnis1 mit allen Dateien und Unterverzeichnissen Gruppe2 zu} % \ubs{chmod}{(change mode) ändert die Zugriffsrechte} \opt{-R}{(recursive) Verzeichnis mit allen enthaltenen Dateien und Unterverzeichnissen} \opt{u g o}{ändert die Rechte für: \textbf{u} (user) Eigentümer der Daten; \textbf{g} (group) Gruppe; \textbf{o} (other) alle anderen} \opt{+ - =}{ändert die Rechte durch: \textbf{+} hinzufügen; \textbf{-} entfernen; \textbf{=} absolut setzen} \opt{r w x}{setzt folgende Rechte: \textbf{r} (read) Leserecht; \textbf{w} (write) Schreibrecht; \textbf{x} (execute) Ausführungsrecht; für den Wechsel in ein Verzeichnis ist das Ausführungsrecht daran erforderlich.} \bsp{chmod u=rwx \ttt{Datei1}} \txt{der Eigentümer erhält alle Rechte an Datei1} \bsp{chmod -R g+w \ttt{Verzeichnis1}} \txt{Gruppenmitglieder erhalten zusätzlich das Schreibrecht für das Verzeichnis und alle darin befindlichen Unterverzeichnisse und Dateien} \bsp{chmod o-w \ttt{Datei2}} \tabende{den übrigen Benutzern wird das Schreibrecht für Datei2 genommen} % \ubs{chown}{(change owner) ändert den Eigentümer von Daten} \opt{-R}{(recursive) Verzeichnis mit allen enthaltenen Dateien und Unterverzeichnissen} \bsp{chown \ttt{User1 Datei1}} \txt{User1 wird Eigentümer von Datei1} \bsp{chown -R \ttt{User2 Verzeichnis1}} \txt{User2 wird Eigentümer von Verzeichnis1 und allen Unterverzeichnissen} \bsp{chown \ttt{User3:Gruppe3 Datei2}} \tabende{ändert den Eigentümer und die Gruppe für Datei2} % \ubs{clear}{löscht den Inhalt des Bildschirms, ebenso wie Ctrl + L} \tabende{ } % \ubs{convert}{wandelt Grafikdateien um} \bsp{convert \ttt{tux.png} -page \ttt{A4 tux.ps}} \txt{wandelt tux.png in PostScript und A4-Format um und schreibt das Ergebnis in die Datei tux.ps} \bsp{convert \ttt{tux.png} -transparent \ttt{white} -verbose \ttt{tux.transp.gif}} \txt{wandelt weißen in transparenten Hintergrund um und schreibt das Ergebnis in die Datei tux.transp.gif} \bsp{convert \ttt{tux.png} -resize \ttt{50\% tux.small.jpg}} \tabende{verkleinert tux.png um 50\% und schreibt das Ergebnis in die Datei tux.small.jpg} % \ubs{cp}{(copy) kopieren von Daten} \opt{-i}{(interactive) falls am Ziel schon eine Datei mit gleichem Namen existiert, wird nachgefragt, ob diese überschrieben werden soll} \opt{-R}{(recursive) kopiert ein Verzeichnis mit seinem gesamten Inhalt} \opt{-a}{(archive, entspricht -dpR) behält die ursprünglichen Attribute (Rechte, Eigentümer, Timestamp usw.) bei und kopiert rekursiv} \bsp{cp -i \ttt{Datei1 Datei2}} \txt{legt von Datei1 eine Kopie an; wenn Datei2 bereits existiert, wird gewarnt} \bsp{cp \ttt{Datei1 Datei2 Datei3 Verzeichnis1}} \txt{kopiert die Dateien1-3 ins Verzeichnis1} \bsp{cp -r \ttt{Verzeichnis1 Verzeichnis2}} \txt{kopiert Verzeichnis1 mit dem gesamten Inhalt ins Verzeichnis2 bzw. legt eine Kopie davon an, wenn Verzeichnis2 nicht bereits existiert} \bsp{cp -a \ttt{Verzeichnis1 Verzeichnis2}} \tabende{kopiert Verzeichnis1 mit dem gesamten Inhalt ins Verzeichnis2, wobei die ursprünglichen Attribute (Rechte, Eigentümer, Timestamp usw.) erhalten bleiben} % \ubs{cut}{schneidet bestimmte Felder aus der Datei aus und gibt sie am Bildschirm aus} \opt{-d}{definiert das Trennzeichen} \opt{-f}{gibt Spaltennummern an} \bsp{cut -d\tto{:} -f\tto{1,3,4 Datei1}} \txt{schneidet die durch : getrennten Spalten 1,3 und 4 aus } \end{longtable} \tabsep \begin{longtable}{p{3cm}p{12.5cm}} \ltk{D} \ubs{date}{gibt das Datum und die Uhrzeit aus; das Ausgabeformat kann mit + und Platzhaltern beeinflusst werden} \bsp{date +''\%d.\%m.\%y \%T''} \tabende{gibt Datum und Uhrzeit im Format DD.MM.YY HH:MM:SS aus} % \ubs{df}{(disk free) zeigt den freien Speicherplatz auf Festplattenpartitionen an} \opt{-h}{(human readable) sorgt für die geeignete Wahl der Einheiten} \bsp{df -h} \txt{zeigt den freien Speicherplatz auf allen Festplattenpartitionen an} \bsp{df -h .} \tabende{zeigt den freien Speicherplatz auf der aktuellen Partition an} % \ubs{diff}{(differences) vergleicht Dateien zeilenweise} \opt{-b}{(blanks) ignoriert Leerzeichen} \opt{-i}{(ignore) ignoriert Groß- / Kleinschreibung} \opt{-q}{(quiet) gibt nur die Unterschiede aus} \opt{-r}{(recursive) vergleicht ein Verzeichnis incl. aller Unterverzeichnisse} \opt{-w}{(white space) alle Leerräume (Leerzeichen, Tabulatoren, Leerzeilen) ignorieren} \bsp{diff -\,-side-by-side -w -d \ttt{Datei1 Datei2}} \txt{gibt die beiden Dateien in zwei Spalten nebeneinander aus} \bsp{diff -rq \ttt{Lipsia Lipsia.old}} \tabende{vergleicht ganze Dateisysteme miteinander} % \ubs{du}{(disk usage) zeigt den Speicherverbrauch eines Verzeichnisses incl. aller enthaltenen Dateien und Unterverzeichnisse an} \opt{-h}{(human readable) sorgt für die Wahl angenehmer Einheiten} \opt{-s}{(sum) zeigt nur die Summe für alle im Verzeichnis vorhandenen Unterverzeichnisse an} \bsp{du -hs \ttt{Verzeichnis1}} \tabende{zeigt den Speicherverbrauch von Verzeichnis1 mit gut lesbaren Größeneinheiten an} \end{longtable} \tabsep \begin{longtable}{p{3cm}p{12.5cm}} \ltk{E} \ubs{echo}{gibt eine Zeichenkette aus} \bsp{echo \ttt{''letzte Zeile'' >\,> Datei1}} \txt{hängt den Text ''letzte Zeile'' an Datei1 an} \bsp{echo > \ttt{/tmp/test}} \tabende{löscht den Inhalt von /tmp/test (nicht die Datei selbst); ist /tmp/test nicht vorhanden, wird eine leere Datei erzeugt } % \ubs{expand}{wandelt Tabulatoren in der Datei in eine entsprechende Anzahl Leerzeichen um} \bsp{expand -t \ttt{4 Datei1}} \tabende{wandelt Tabulatoren in 4 Leerzeichen um} \end{longtable} \tabsep \begin{longtable}{p{3cm}p{12.5cm}} \ltk{F} \ubs{file}{zeigt den Typ einer Datei an, der nicht an Hand ihrer Endung ermittelt wird} \bsp{file \ttt{Datei1}} \tabende{zeigt den Typ von Datei1 an} % \ubs{find}{sucht ab einem Verzeichnis nach Daten} \ops{-name}{ test}{sucht nach allen Datensätzen mit Namen test} \opt{-type d}{sucht nur nach Verzeichnissen} \ops{-mtime}{ n}{(modify time) sucht nach Daten, die in den letzten n*24h verändert wurden} \bsp{find \ttt{./SCR} \lll -type f \lll -exec \ttt{md5sum} \{\} \ttt{2>/dev/null >\,> /tmp/md5sum.scr} \lll \textbackslash ;} \txt{sucht vom Verzeichnis ./SCR ausgehend alle Dateien (-type f) und führt für alle Treffer den Befehl md5sum aus (berechnet die md5-Summen der Dateien). Fehlermeldungen werden verworfen, die übrigen Meldungen an die Datei /tmp/md5sum.scr angehängt} \bsp{find . -mtime +1} \txt{sucht im aktuellen Verzeichnis nach Dateien, die älter als 24 Stunden sind} \bsp{find . -mtime 0} \txt{sucht im aktuellen Verzeichnis nach Dateien, die jünger als 24 Stunden sind} \bsp{find /tmp \lll -name \ttt{''*.pdf''} \lll -exec \ttt{mv} \{\} \ttt{/tmp/AllePDFs} \lll \textbackslash ;} \tabende{sucht vom Verzeichnis /tmp ausgehend alle PDF-Files (-name *.pdf) und führt für alle Treffer ( \{\} ) einen Befehl aus (-exec): Sie werden nach /tmp/AllePDFs verschoben (mv)} % \ubs{free}{zeigt den freien und den belegten Hauptspeicherplatz im System an} \tabende{ } % \ubs{fromdos}{konvertiert Textdateien von DOS, wobei die DOS Datei überschrieben wird} \opt{-b}{(backup) erzeugt eine Sicherheitskopie der Originaldatei} \bsp{fromdos -b \ttt{Datei1}} \tabende{wandelt Datei1 ins Unix-Format um, legt jedoch vorher Datei1.bak als Sicherheitskopie an} % \ubs{ftp}{ermöglicht den Transport von Daten über ein Netzwerk} \tabende{ } \end{longtable} \tabsep \begin{longtable}{p{3cm}p{12.5cm}} \ltk{G} \ubs{grep}{(get regular expression) durchsucht die Datei nach Zeilen, die bestimmte Zeichen(folgen) enthalten} \opt{-i}{(ignore) Groß- und Kleinbuchstaben werden nicht unterschieden} \opt{-v}{(invert) gibt nur Zeilen aus, die die Zeichen(folge) nicht enthalten} \bsp{cat \ttt{Datei1} | grep \ttt{''Muster''}} \tabende{durchsucht Datei1 nach der Zeichenfolge Muster} % \ubs{groups}{zeigt die Gruppen an, in denen ein Benutzer Mitglied ist} \tabende{ } % \ubs{gunzip}{dekomprimiert Dateien} \bsp{gunzip \ttt{Archiv1.tgz}} \tabende{dekomprimiert Archiv1.tar.gz zu Archiv.tar} % \ubs{gzip}{komprimiert Dateien} %\opt{-d}{(decompress) dekomprimiert Dateien} \opt{-q}{(quiet) zeigt keine Meldungen an} \opt{-r}{(recursive) komprimiert ein Verzeichnis mit allen enthaltenen Dateien} \opt{-t}{(table of contents) untersucht komprimierte Dateien auf Fehler und listet den Inhalt auf} \opt{-\.-best}{komprimiert best möglich, dauert beim Komprimieren länger, nicht aber beim Dekomprimieren} \bsp{gzip \ttt{Archiv1.tar}} \txt{komprimiert Archiv1.tar zu Archiv1.tar.gz} %\bsp{gzip -d \ttt{Archiv1.tar.gz}} %\txt{dekomprimiert Archiv1.tar.gz zu Archiv1.tar} \bsp{gzip -r \ttt{Verzeichnis1}} \txt{komprimiert Verzeichnis1 mit allen Unterverzeichnissen} \bsp{gzip -t \ttt{Datei1.gz}} \tabende{untersucht Datei1.gz auf Fehler und listet den Inhalt auf} \end{longtable} \tabsep \begin{longtable}{p{3cm}p{12.5cm}} \ltk{H} \ubs{head}{zeigt die ersten zehn Zeilen der Datei an} \ops{-n}{30}{statt 10 werden die ersten 30 Zeilen ausgegeben} \bsp{head -n \ttt{1 Datei1}} \tabende{zeigt die erste Zeile von Datei1 an} % \ubs{hostname}{liefert den Rechnernamen } \tabende{ } % \ubs{htop}{interaktives Programm zum Anzeigen und Beenden von Prozessen sowie Ändern der Priorität von Prozessen} \tabende{ } \end{longtable} \tabsep \begin{longtable}{p{3cm}p{12.5cm}} \ltk{I} \ubs{id}{zeigt Informationen über einen Benutzer an (UID, GID und effektive IDs)} \tabende{ } % \ubs{identify}{zeigt das Format und die Eigenschaften von Grafikdateien an} \bsp{identify \ttt{tux.png}} \tabende{zeigt Informationen (z.B. Bildgröße, Farbtiefe, Dateigröße, Dateiformat) zur Datei tux.png an} % \ubs{ispell}{prüft die Rechtschreibung in Textdateien} \opt{-b}{(backup) erzeugt eine Sicherheitskopie mit der Endung .bak} \opt{-d}{(dictionary) ermöglicht die Angabe einer bestimmten Wörterbuchdatei} \opt{-h}{(html) die zu prüfende Datei ist im HTML-Format} \opt{-T}{(type) gibt das Textformat der Datei an} \bsp{ispell -T latin1 Datei1} \tabende{überprüft Datei1 auf Rechtschreibfehler} \end{longtable} \tabsep \begin{longtable}{p{3cm}p{12.5cm}} \ltk{K} \ubs{kill}{sendet Signale an Prozesse (besser \textbf{htop} benutzen)} \bsp{kill \ttt{1027}} \txt{fordert den Prozess Nr. 1027 auf, aufzuräumen und sich zu beenden (die PID wird mit ps aux ermittelt)} \bsp{kill -9 \ttt{1027}} \tabende{fordert das Betriebssystem auf, den Prozess Nr. 1027 hart zu beenden (ohne Gelegenheit zum Aufräumen)} % \ubs{konsole}{Terminalprogramm für KDE, startet ein neues Fenster mit einer neuen Shell} \tabende{ } % \ubs{kprinter}{Druckprogramm für KDE, das sich automatisch öffnet, wenn die ''Drucken'' Schaltfläche eines KDE-Programms angeklickt wird} \opt{-P \ttt{oder} -d}{einen bestimmten Drucker vorgeben} \bsp{kprinter -P \ttt{Drucker1 Datei1}} \tabende{druckt Datei1 auf Drucker1} % \ubs{ruler}{mißt Abstände auf dem Bildschirm} \tabende{ } \end{longtable} \tabsep \begin{longtable}{p{3cm}p{12.5cm}} \ltk{L} \ubs{less}{stellt den Inhalt einer Datei seitenweise dar} \opt{Bild-ab}{blättert seitenweise vor} \opt{Leertaste}{blättert seitenweise vor} \opt{Bild $\uparrow$}{blättert seitenweise zurück} \opt{Pfeil $\downarrow$}{blättert zeilenweise vor} \opt{Pfeil $\uparrow$}{blättert zeilenweise zurück} \opt{/Suchstring}{durchsucht das Dokument nach ``Suchstring''} \opt{Q}{beendet die Anzeige} \bsp{less \ttt{*.txt}} \tabende{stellt alle Dateien, die auf .txt enden, nacheinander seitenweise dar} % \ubs{ln}{(link) erstellt Links, d.h. gibt Dateien einen zweiten Namen} \opt{-s}{erstellt einen symbolischen Link (die anderen Arten von Links sind hier uninteressant)} %\bsp{ln Bestehender_Name Neuer_Name} %\txt{erstellt einen harten Link} \bsp{ln -s \ttt{wolfgang.txt letzter\_proband.txt}} \tabende{gibt der Datei wolfgang.txt den zusätzlichen (funktionalen) Namen letzter\_proband.txt als Zweitname} % \ubs{lp}{(line printer) nimmt die Datei zum Drucken in die Standardwarteschlange auf} \opt{-P}{einen bestimmten Drucker vorgeben} \bsp{lp -P \ttt{Drucker1 Datei1}} \tabende{druckt Datei1 auf Drucker1} % \ubs{ls}{(list) listet Infos über Dateien} \opt{-a}{zeigt alle Dateien, d.h. auch die mit . beginnen, an} \opt{-F}{zeigt den Dateityp durch Anhängen von Symbolen (*: ausführbar,/: Verzeichnis, @: Link) an den Dateinamen an} \opt{-h}{zeigt die Dateigröße in einer menschenfreundlichen Einheit an} \opt{-l}{zeigt ausführliche Informationen an (Rechte, Eigentümer, Dateityp, Größe)} \opt{-R}{zeigt den ganzen Dateibaum mit allen Unterverzeichnissen an} \opt{-S}{sortiert nach Größe} \bsp{ls -alF \ttt{Verzeichnis1}} \tabende{zeigt eine ausführliche, charakterisierende Auflistung der Daten in Verzeichnis1 an, wobei auch versteckte Dateien berücksichtigt werden} \end{longtable} \tabsep \begin{longtable}{p{3cm}p{12.5cm}} \ltk{M} \ubs{man}{(manual) zeigt den Handbucheintrag zu einem Thema an; mit q wird die Anzeige beendet; in der man page kann man mit den Optionen von \textbf{less} arbeiten} \opt{-a}{(all) zeigt alle zum Thema passenden Seiten an} \opt{-k}{(keyword) zeigt passende Einträge zu einem Schlüsselwort an} \bsp{man -l \ttt{chmod} -t | lp} \txt{druckt die Handbuchseiten von chmod} \bsp{man \ttt{chmod} | a2ps} \txt{wandelt die Handbuchseiten in PostScript um} \bsp{man -k \ttt{quota}} \tabende{listet alle zum Stichwort quota gefundenen Manpages auf} % \ubs{mkdir}{(make directory) erstellt Verzeichnisse} \bsp{mkdir \ttt{Verzeichnis1}} \txt{erstellt Verzeichnis1} \bsp{mkdir -p \ttt{Tiere/Hunde/Dackel}} \tabende{erstellt das Verzeichnis Tiere, gibt aber keinen Fehler aus, falls das Verzeichnis bereits existiert. Erstellt dann im Verzeichnis Tiere das Unterverzeichnis Hunde und dann im Verzeichnis Hunde das Unterverzeichnis Dackel.} % \ubs{more}{zeigt Dateien oder Ausgaben von Befehlen seitenweise an, less ist besser} \bsp{ls -l \ttt{Verzeichnis1} | more} \tabende{zeigt eine ausführliche Auflistung der Daten in Verzeichnis1 an und leitet die Ausgabe zur seitenweisen Anzeige an more weiter. Allerdings ist hier kein Zurückblättern möglich, mit der Leertaste wird eine Seite weiter geblättert, mit q wird die Anzeige beendet.} % \ubs{mv}{Daten verschieben, umbenennen} \opt{-i}{überschreibt eine bereits bestehende Datei nur nach Bestätigung} \bsp{mv -i \ttt{Datei1 Datei 2}} \txt{nennt Datei1 in Datei2 um} \bsp{mv \ttt{Datei1 Datei2 Verzeichnis1}} \tabende{verschiebt Datei1 und Datei2 ins Verzeichnis1} \end{longtable} \tabsep \begin{longtable}{p{3cm}p{12.5cm}} \ltk{N} \ubs{nice}{startet ein Kommando mit einer anderen Priorität} \bsp{nice \ttt{-15 Kommando1}} \tabende{startet Kommando1 mit der Priorität 15; je höher der Wert, desto geringer die Priorität. Das Kommando bekommt also weniger Rechenleistung als konkurrierende Prozesse.} % \ubs{nohup}{(no hang-up) führt ein Kommando weiter aus, wenn der aufrufende Prozess beendet wird} \bsp{nohup \ttt{Kommando1}} \tabende{Kommando1 wird auch dann weiter ausgeführt, wenn z.B. das Fenster geschlossen wird} \end{longtable} \tabsep \begin{longtable}{p{3cm}p{12.5cm}} \ltk{P} \ubs{passwd}{(password) ändert das Passwort (interaktiver Befehl)} \tabende{ } % \ubs{ping}{prüft, ob der angegebene (Name oder IP) Rechner erreichbar ist; bester Test, ob das Internet erreichbar ist} \bsp{ping \ttt{www.heise.de}} \tabende{testet, ob der Web-Server des Heise-Verlags, der sehr zuverlässig und performant ist, errreicht wird. Diese Abfrage muss man mit Ctrl-C abbrechen.} \tabende{ } % \ubs{ps}{(process status) zeigt die laufenden Prozesse an} \bsp{ps aux | grep \ttt{firefox}} \txt{gibt alle Prozesse aus und durchsucht die Ausgabe nach firefox} \bsp{ps -u \ttt{hugo}} \txt{zeigt alle Prozesse an, die vom Benutzer hugo gestartet wurden} \bsp{ps -\,-forest} \tabende{zeigt Prozesse und ihre Abhängigkeiten in einer Baumstruktur an} % \ubs{pstree}{zeigt Prozesse und ihre Abhängigkeiten in einer Baumstruktur an} \tabende{ } % \ubs{ps2pdf}{wandelt PostScript-Dokumente in pdf um} \bsp{ps2pdf \ttt{Datei.ps}} \txt{wandelt Datei.ps in Datei.pdf um} \bsp{ps2pdf \ttt{Datei.ps gewandelt.pdf}} \tabende{wandelt Datei.ps in gewandelt.pdf um} % \ubs{pwd}{(print working directory) zeigt das aktuelle Arbeitsverzeichnis mit absolutem Pfad an} \tabende{ } \end{longtable} \tabsep \begin{longtable}{p{3cm}p{12.5cm}} \ltk{Q} \ubs{quota}{zeigt den zur Verfügung stehenden und den benutzten Speicherplatz für einen Benutzer an} \tabende{ } \end{longtable} \tabsep \begin{longtable}{p{3cm}p{12.5cm}} \ltk{R} \ubs{recode}{konvertiert Daten in eine andere Zeichenkodierung} \bsp{recode \ttt{Latin-1..URTF-8 Datei1}} \tabende{kodiert Latin-1 nach UTF-8 um (.. bedeutet von .. nach)} % \ubs{rename}{nennt mehrere Dateien um} \bsp{rename \ttt{'y/A-Z/a-z/' *}} \txt{wandelt alle im Dateinamen vorhandenen Großbuchstaben in Kleinbuchstaben um} \bsp{rename \ttt{'s/\textbackslash .bak\$//' *.bak}} \tabende{entfernt bei allen .bak Dateien die Dateiendung} % \ubs{renice}{verändert (verringert) die Priorität eines laufenden Prozesses} \bsp{renice \ttt{19 PID}} \tabende{ändert die Priorität des Prozesses auf 19 (=niedrigster Wert), dieser Prozess bekommt nur dann Rechenleistung, wenn kein anderer sie haben will. Der Ressourceneinsatz kann nur verringert werden.} % \ubs{rm}{(remove) löscht Daten. Unwiederbringlich!} \opt{-f}{(force) erzwingt Löschen, d.h. auch schreibgeschützte Dateien werden gelöscht} \opt{-i}{(interact) fragt vor dem Löschen nach} \opt{-r}{(recursive) löscht ein Verzeichnis mit allen Inhalten} \bsp{rm \ttt{Datei1}} \txt{löscht Datei1} \bsp{rm -r \ttt{Verzeichnis1}} \tabende{löscht Verzeichnis1 mit allen Unterverzeichnissen und Dateien} \end{longtable} \tabsep \begin{longtable}{p{3cm}p{12.5cm}} \ltk{S} \ubs{scp}{(secure copy) kopiert Dateien verschlüsselt innerhalb eines Netzwerks von einem Rechner auf einen anderen} \opt{-r}{kopiert Verzeichnisse samt Inhalt} \bsp{scp \ttt{User1@Rechner1:Pfad/Datei1 .}} \txt{kopiert Datei1 von Rechner1 ins aktuelle Verzeichnis} \bsp{scp \ttt{User1@Rechner1:Pfad/Datei1 Pfad/Datei2 Pfad/Datei3 User2@Rechner2:Pfad/Verzeichnis1}} \txt{kopiert die Dateien 1-3 von Rechner1 ins Verzeichnis1 auf Rechner2} \bsp{scp -r \ttt{User1@Rechner1:Pfad/Verzeichnis1 User2@Rechner2:Pfad/Verzeichnis2}} \tabende{kopiert Verzeichnis1 von Rechner1 mit allen Dateien und Unterverzeichnissen in Verzeichnis2 auf Rechner2} % \ubs{sed}{(stream Editor) bearbeitet beliebig große Datei Zeichen für Zeichen} %\bsp{sed -e '/./\{H;\$!d;\}' -e 'x;/AAA/!d;'} %\txt{zeigt Absätze an, die AAA enthalten, wobei Leerzeilen die Absätze trennen)} \bsp{sed 's/Hams/Hans/g' Datei1} \tabende{ersetzt alle in Datei1 vorkommenden Zeichenfolgen ''Hams'' durch ''Hans''} % \ubs{sleep}{ermöglicht die Vorgabe einer Wartezeit bevor ein Kommando ausgeführt wird} \txt{die Zeit wird mit s (Sekunden), m (Minuten), h (Stunden) oder d (Tage) angegeben} \bsp{sleep \ttt{3600 logout}} \txt{wartet eine Stunde und führt dann das Kommando logout aus} \bsp{sleep \ttt{1h logout}} \tabende{wartet ebenfalls eine Stunde, bevor das Kommando logout ausgeführt wird} % \ubs{sort}{sortiert eine Datei zeilenweise} \bsp{sort -t: +3 -4 \ttt{Datei1}} \txt{sortiert Datei1 anhand der ersten 5 Zeichen der 4. Spalte, Spaltentrennzeichen ist :} \bsp{du -ks \$HOME | sort +0 -n \ttt{Datei1}} \tabende{zeigt den Speicherverbrauch des Homeverzeichnisses numerisch sortiert nach Inhalt der 1. Spalte an (Zählung beginnt mit 0)} % \ubs{source}{führt eine Datei oder ein Script aus} \bsp{source \ttt{./Script1}} \tabende{führt Script1 im aktuellen Verzeichnis aus} % \ubs{ssh}{(secure shell) erlaubt sicheres Einloggen auf einem anderen Rechner über eine verschlüsselte Verbindung} \opt{-X}{aktiviert X11 Forwarding, d.h. grafische Anwendungen} \bsp{ssh \ttt{hugo@rechner1}} \tabende{User hugo loggt sich mittels einer verschlüsselten Verbindung auf rechner1 ein} \end{longtable} \tabsep \begin{longtable}{p{3cm}p{12.5cm}} \ltk{T} \ubs{tail}{zeigt die letzten 10 Zeilen einer Datei an} \opt{-n}{zeigt eine bestimmte Anzahl Zeilen an} \opt{-f}{beobachtet ''wachsende'' Dateien (z.B. Logdateien)} \bsp{tail -n\ttt{30 Datei1}} \txt{zeigt die letzten 30 Zeilen von Datei1} \bsp{tail -f \ttt{/var/log/messages}} \tabende{beobachtet die Datei messages; zeigt zunächst die letzten 10 Zeilen der Datei an, und danach alle neu hinzukommenden Zeilen} % \ubs{tar}{(tape archive) Programm zum Arbeiten mit Archiven} \opt{-t}{(table of contents) listet den Inhalt eines Archivs auf} \opt{-x}{(extract) entpackt ein Archiv} \opt{-c}{(create) erstellt ein Archiv} \opt{-v}{(verbose) gibt Meldungen aus} \opt{-z}{(de-)komprimiert Archive} \bsp{tar -tvf \ttt{Archivdatei1.tar}} \txt{listet den Inhalt eines Archivs auf} \bsp{tar -xvf \ttt{Archivdatei1.tar}} \txt{entpackt ein Archiv ins aktuelle Verzeichnis} \bsp{tar -xvzf \ttt{Archivdatei1.tgz}} \txt{dekomprimiert und entpackt Archive} \bsp{tar -xvjf \ttt{Archivdatei1.bz2}} \txt{dekomprimiert und entpackt bz2 - Archive} \bsp{tar -czf \ttt{Archivdatei1 Verzeichnis1}} \tabende{sichert alle im Verzeichnis1 vorhandenen Dateien und Verzeichnisse in die Archivdatei1} % \ubs{tee}{verzweigt die Ausgabe eines Kommandos} \bsp{ls -al | tee \ttt{Datei1}} \tabende{lenkt die Ausgabe des Kommandos ls -al in Datei1 und auf den Bildschirm} % \ubs{time}{mißt die Zeit, die zur Ausführung eines Kommandos benötigt wird} \bsl{time \ttt{Kommando}} % \ubs{todos}{konvertiert Textdateien nach DOS} \opt{-b}{(backup) erzeugt eine Sicherheitskopie der Originaldatei} \bsp{todos -b \ttt{Datei1}} \tabende{wandelt Datei1 nach DOS um, legt jedoch vorher eine Sicherheitskopie an} % \ubs{touch}{setzt die Änderungs- und Zugriffszeit einer Datei auf die aktuelle Zeit} \bsp{touch \ttt{Datei1}} \tabende{ändert die Zeitangaben für Datei1; ist Datei1 nicht vorhanden, wird eine leere Datei mit diesem Namen angelegt} % \ubs{tr}{(translate) Zeichen einer Datei umwandeln oder löschen} \bsp{cat \ttt{Datei1} | tr 'A-Z' 'a-z'} \txt{wandelt Großbuchstaben in Kleinbuchstaben in Datei1 um} \bsp{echo \ttt{AbCdEf} | tr 'a-z' 'A-Z'} \txt{wandelt Kleinbuchstaben in Großbuchstaben um} \bsp{tr -cs '[A-Z][a-z]' '[\textbackslash 012*]' < \ttt{Datei2}} \txt{erzeugt aus dem Text in Datei2 eine Liste von Worten} \bsp{tr '[\textbackslash 012]' ' ' < \ttt{Datei3}} \tabende{entfernt Zeilenumbrüche in Datei3} % \ubs{tree}{zeigt den Verzeichnisinhalt in einer Baumstruktur an} \bsp{tree \ttt{Verzeichnis1}} \tabende{zeigt den Inhalt von Verzeichnis1 in einer Baumstruktur an} \end{longtable} \tabsep \begin{longtable}{p{3cm}p{12.5cm}} \ltk{U} \ubs{uname -a}{(unix name) gibt Informationen über den Rechner und das Betriebssystem (Kernel) aus} \tabende{ } % \ubs{unexpand}{wandelt aufeinanderfolgende Leerzeichen in Tabulatoren um} \bsp{unexpand \ttt{Datei1}} \tabende{wandelt in Datei1 aufeinanderfolgende Leerzeichen in Tabulatoren um} % \ubs{uniq}{entfernt aufeinanderfolgende doppelte Zeilen aus einer Datei, die meist vorher sortiert werden sollte} \opt{-d}{gibt nur die doppelten Zeilen aus} \opt{-u}{gibt nur die nicht doppelt vorhandenen Zeilen aus} \opt{-i}{Groß- / Kleinschreibung ignorieren} \bsp{sort \ttt{Datei1} | uniq -d} \tabende{sortiert Datei1 und entfernt dann alle doppelten Zeilen} % \ubs{/usr/share/doc}{Verzeichnis mit ausführlichen Dokumentationen} \tabende{ } \end{longtable} \tabsep \begin{longtable}{p{3cm}p{12.5cm}} \ltk{W} \ubs{w}{gibt eine Zusammenfassung der Systemauslastung, der aktuell angemeldeten Benutzer und deren Prozesse aus} \tabende{ } % \ubs{wc}{(word count) zählt Zeilen, Wörter oder Zeichen einer Datei} \opt{-l}{(lines) zählt die Zeilen einer Datei} \opt{-w}{(words) zählt die Wörter einer Datei} \opt{-c}{(characters) zählt die Zeichen einer Datei} \bsp{cat \ttt{Datei1} | wc -l} \tabende{zählt die Zeilen von Datei1} % \ubs{whatis}{gibt kurze Information zu einem Thema aus} \bsp{whatis \ttt{Thema1}} \tabende{zeigt kurze Informationen zu Thema1} % \ubs{whereis}{gibt den absoluten Pfad zu einem Kommando aus} \bsp{whereis \ttt{Kommando1}} \tabende{zeigt den Pfad zu Kommando1} % \ubs{who}{zeigt die angemeldeten Benutzer, den Namen des Terminals und die Systemzeit an} \tabende{ } % \ubs{whoami}{gibt den eigenen Benutzernamen aus} \tabende{ } \end{longtable} \tabsep \begin{longtable}{p{3cm}p{12.5cm}} \ltk{X} \ubs{xmag}{vergrößert Teile des Bildschirms} \tabende{} % \ubs{xpdf}{zeigt pdf - Dokumente an} \bsp{xpdf \ttt{Datei1.pdf}} \tabende{zeigt Datei1 an} \end{longtable}