Skip to content
Snippets Groups Projects
cheatsheet.tex 8.09 KiB
Newer Older
  • Learn to ignore specific revisions
  • \documentclass[twocolumn]{scrartcl}
    \usepackage[utf8]{inputenc}
    \usepackage[ngerman]{babel}
    \usepackage{tabularx}
    \usepackage{colortbl}
    \usepackage[automark]{scrpage2}
    
    \setlength\parindent{0pt}
    \setlength\parskip{\medskipamount}
    \setlength{\oddsidemargin}{-15mm}
    \setlength{\paperwidth}{210mm}
    \setlength{\paperheight}{297mm}
    \setlength{\textwidth}{190mm}
    \setlength{\textheight}{257mm}
    
    \renewcommand*\familydefault{\sfdefault}
    
    \pagestyle{scrheadings}
    \clearscrheadings
    \clearscrplain
    \lohead{Linux-Kurs {\number\year} -- Befehlsreferenz}
    \rohead{Hier könnte dein Name stehen}
    
    % Die dunkle Variante
    \definecolor{cmdtitlebg}{rgb}{0.05,0.05,0.3}
    \definecolor{cmdtitlefg}{rgb}{1,1,1}
    
    \newcommand{\cmdfmt}[1]{\texttt{#1}}
    \newcommand{\parfmt}[1]{\texttt{\textsl{#1}}}
    
    \newcommand{\cmdbox}[2]{
      \begin{tabularx}{\linewidth}{|lX|} \hline
      \multicolumn{2}{|l|}{\cellcolor{cmdtitlebg}\Large\rule{0ex}{1em}\textcolor{cmdtitlefg}{#1}} \\ \hline
      #2
      \hline
      \end{tabularx}
    }
    
    \newcommand{\cmd}[3]{
      \multicolumn{2}{|l|}{\cmdfmt{#1} \parfmt{#2}} \\
      \hspace{1ex} & #3 \\
    }
    
    \begin{document}
    
    \cmdbox{Verzeichnisse}{
      \cmd{cd}{dir}{Wechsle ins Verzeichnis \parfmt{dir}}
      \cmd{cd}{-}{Wechsle ins zuletzt besuchte Verzeichnis}
      \cmd{ls}{}{Inhalt des aktuellen Verzeichnisses anzeigen}
      \cmd{ls}{-al}{Formatierte (\parfmt{-l}) Ausgabe inkl. versteckter Dateien (\parfmt{-a}) des aktuellen Verzeichnisses}
      \cmd{pwd}{}{Pfad des aktuellen Verzeichnisses ausgeben}
      \cmd{mkdir}{dir}{Legt das Verzeichnis \parfmt{dir} an}
      \cmd{rmdir}{dir}{L"oscht das leere(!) Verzeichnis \parfmt{dir}}
    
      \cmd{rm}{-r dir}{\textbf{Achtung}: L"oscht das Verzeichnis \parfmt{dir} und alle darin enthaltenen Dateien sowie Unterverzeichnisse}
    
      \cmd{cp}{-a dir1 dir2}{Kopiert das Verzeichnis \parfmt{dir1} in das Verzeichnis \parfmt{dir2}}
    
      \cmd{mv}{dir1 dir2}{Verschiebt das Verzeichnis \parfmt{dir1} in das Verzeichnis \parfmt{dir2} --
    
      Falls kein gleichnamiges Verzeichnis besteht, benennt es das Verzeichnis \parfmt{dir1} in \parfmt{dir2} um}
    
      \cmd{chmod}{rechte dir}{"Andert die Zugriffsrechte f"ur \parfmt{dir}}
      \cmd{chmod}{-R rechte dir}{"Andert die Zugriffsrechte f"ur alle Dateien und Ordner unterhalb von \parfmt{dir} und f"ur \parfmt{dir} selbst}
    }
    
    \cmdbox{Drucken}{
      \multicolumn{2}{|l|}{Die Drucker im CIP:} \\
      \multicolumn{2}{|l|}{\cmdfmt{ps1acip} (1. Stock)} \\
      \multicolumn{2}{|l|}{\cmdfmt{ps2acip, ps2ccip} (2. Stock)} \\[1.5ex]
      %\cmd{ps1bcip, ps1ccip}{}{im 1. Stock} 
      %\cmd{ps2bcip, ps2ccip}{}{im 2. Stock} 
      %\multicolumn{2}{l}{\textsf{ps2bcip, ps2ccip (2. Stock)}} \\
      \multicolumn{2}{|X|}{Tipp: Hängt man an den Druckernamen ein \parfmt{d} an, kann man doppelseitig drucken!} \\
      & \\
    
      \cmd{cip-printer-balance}{}{Zeigt das aktuelle Druckguthaben im CIP an}
    
      \cmd{lpr}{-Pdrucker datei}{Druckt die Datei \parfmt{datei} auf dem Drucker \parfmt{drucker} aus}
      \cmd{lpq}{-Pdrucker}{Zeigt die Warteschlange des Druckers \parfmt{drucker} an}
      \cmd{lprm}{-Pdrucker jobnr}{L"oscht den Druckauftrag mit der Nummer \parfmt{jobnr} aus der Warteschlange des Druckers \parfmt{drucker}}
      \cmd{lprm}{-a}{L"oscht \textbf{alle} Druckauftr"age des aktuellen Benutzers aus \textbf{allen} Druckerwarteschlagen}
    }
    
    \cmdbox{Dateien}{
      \cmd{ls}{-l datei}{Formatierte Ausgabe vieler Informationen über die Datei \parfmt{datei}}
      \cmd{ls}{dat* *ei}{Listet alle Dateien auf, deren Name mit \parfmt{dat} beginnt oder mit \parfmt{ei} aufhört}
      \cmd{touch}{datei}{Legt eine leere Datei mit den Namen \parfmt{datei} an}
      \cmd{rm}{datei}{L"oscht die Datei \parfmt{datei}}
      \cmd{rm}{-i *.pdf}{L"oscht alle PDF-Dateien auf Nachfrage}
      \cmd{cp}{datei dir}{Kopiert die Datei in das existierende Verzeichnis \parfmt{dir}}
      \cmd{cp}{datei1 datei2}{Legt eine Kopie der Datei \parfmt{datei1} unter dem Namen \parfmt{datei2} an}
      \cmd{mv}{datei dir}{Verschiebt die Datei \parfmt{datei} in das Verzeichnis \parfmt{dir}}
      \cmd{mv}{datei1 datei2}{Benennt die Datei \parfmt{datei1} in \parfmt{datei2} um}
      \cmd{chmod}{rechte datei}{"Andert die Zugriffsrechte (augo$\pm$rwx) f"ur \parfmt{datei}}
    
      \cmd{cip-quota}{}{Zeigt an, wie viel Speicherplatz man im CIP noch zur Verf"ugung hat}
    
      \cmd{baobab}{$\sim$}{Zeigt an, welche Dateien besonders viel Platz belegen}
      \cmd{ncdu}{$\sim$}{Analog, aber terminalbasiert}
    }
    
    \cmdbox{Chat}{
      \cmd{weechat}{}{Konsolenbasierter IRC-Client}
      \cmd{pidgin}{}{Ein grafischer Chat-Client, der diverse Protokolle unterstützt}
    }
    
    \cmdbox{Packer}{
      \multicolumn{2}{|l|}{\cmdfmt{tar} \parfmt{xvf archiv.tar.gz}} \\
      \cmd{tar}{xvf archiv.tar.bz2}{Entpackt ein komprimiertes Archiv ins aktuelle Verzeichnis.}
      \multicolumn{2}{|l|}{\cmdfmt{tar} \parfmt{cavf archiv.tar.gz dir}} \\
      \cmd{tar}{cavf archiv.tar.bz2 dir}{Packt das Verzeichnis \parfmt{dir} in das gzip- oder bzip2-komprimierte Archiv}
      \cmd{unp}{archiv}{Entpackt das Archiv \parfmt{archiv} -- geht auch für .zip-Archive}
    }
    
    \cmdbox{Betrachter}{
      \cmd{evince}{datei}{"Offnet die PDF- oder PS-Datei \parfmt{datei}}
      \cmd{acroread}{datei.pdf}{"Offnet die PDF-Datei \parfmt{datei.pdf}}
      \cmd{less}{textdatei}{Zeigt den Inhalt von \parfmt{textdatei} seitenweise an.}
      \cmd{gpicview}{datei}{Zeigt die Bilddatei \parfmt{datei} an.}
    
      \cmd{xdg-open}{datei}{Zeigt den Inhalt von \parfmt{datei} mit einem passenden Programm an.}
    
    }
    
    \cmdbox{www}{
      \cmd{wget}{url}{L"adt die angegebene \parfmt{url} herunter}
      \cmd{chromium}{}{"Offnet den Browser Chrome}
      \cmd{firefox}{}{"Offnet den Browser Firefox ("`Iceweasel"')}
    }
    
    \cmdbox{Suchen}{
      \cmd{find}{dir -name dateiname}{Sucht im Verzeichnis \parfmt{dir} (und dessen Unterverzeichnissen) nach einer Datei mit dem Namen \parfmt{dateiname}}
      \cmd{find}{dir -name "*ausdruck*"}{Sucht im Verzeichnis \parfmt{dir} (und dessen Unterverzeichnissen) nach einer Datei deren Name \parfmt{ausdruck} enth"alt}
      \cmd{grep}{ausdruck datei}{Sucht in der Datei \parfmt{datei} zeilenweise nach dem Ausdruck \parfmt{ausdruck}}
      \cmd{grep}{-r ausdruck}{Durchsucht rekursiv alle Dateien im aktuellen Verzeichnis nach dem Ausdruck \parfmt{ausdruck}}
      \cmd{befehl | grep}{ausdruck}{Sucht in der Ausgabe des Befehls \cmdfmt{befehl} nach dem Ausdruck \parfmt{ausdruck}}
    }
    
    \cmdbox{Prozesse}{
      \cmd{htop}{}{Zeigt die gerade aktiven Prozesse an}
      \cmd{ps}{xu}{Zeigt deine gerade aktiven Prozesse an}
      \cmd{kill}{pid}{Beendet den Prozess mit der ID \parfmt{pid}}
      \cmd{killall}{name}{Beendet alle Prozesse mit dem Namen \parfmt{name}}
      \cmd{Ctrl-c}{}{Beendet den aktuell laufenden Prozess}
      \cmd{jobs, bg, fg, Ctrl-z}{}{Hintergrundprozesse -- siehe \cmdfmt{man bash}}
    }
    
    \cmdbox{Hilfe}{
      \cmd{man}{kommando}{Zeigt die Manpage zum Befehl \parfmt{kommando} an}
      \cmd{apropos}{stichwort}{Sucht in der Hilfedatenbank nach dem Stichwort \parfmt{stichwort}}
    }
    
    \cmdbox{SSH}{
      \cmd{ssh}{user@host}{Programm um \textsl{remote} auf einen PC zuzugreifen}
      \cmd{scp}{quelle ziel}{Kopiert die Datei \parfmt{quelle} nach \parfmt{ziel}. Dabei k"onnen sowohl \parfmt{quelle} also auch \parfmt{ziel} das Format \parfmt{user@host:datei} haben.}
      \cmd{scp}{-r quelle ziel}{Kopiert den Ordner \parfmt{quelle} nach \parfmt{ziel}. Dabei k"onnen sowohl \parfmt{quelle} also auch \parfmt{ziel} das Format \parfmt{user@host:datei} haben.}
    }
    
    \cmdbox{Shell}{
      \cmd{alias}{}{Zeigt alle bestehenden Befehlsaliase an}
      \cmd{alias}{aliasname="befehl"}{Erstellt ein neues Alias mit dem Namen \parfmt{aliasname}. Beim Aufruf von \parfmt{aliasname} wird der Befehl \parfmt{befehl} ausgef"uhrt}
      \cmd{$\sim$/.bashrc}{}{Konfigurationsdatei für die Shell -- hier können Aliase dauerhaft eingetragen werden}
      %TODO bashrc
    }
    
    \cmdbox{Virtuelle Terminals}{
      \cmd{tmux}{}{Startet eine Shell in einem neuen virtuellen Terminal}
      \cmd{Ctrl-b}{d}{Trennt die Verbindung zur laufenden tmux-Session --
      alle gestarteten Programme laufen im Hintergrund weiter}
      \cmd{tmux}{attach}{Verbindet sich zu einer bestehenden tmux-Session}
    }
    
    \cmdbox{Editoren}{
      \cmd{gedit}{datei}{"Offnet das Text-File \parfmt{datei} mit dem Editor Gedit}
      \cmd{kate}{datei}{"Offnet das Text-File \parfmt{datei} mit dem Editor Kate}
      \cmd{nano}{datei}{"Offnet das Text-File \parfmt{datei} mit dem Terminal-Editor Nano}
      \cmd{vim}{datei}{"Offnet das Text-File \parfmt{datei} mit dem Terminal-Editor Vim}
    }
    
    \end{document}