Shell-Programmierung/shell.tex
2006-01-10 10:42:48 +00:00

250 lines
9.0 KiB
TeX

% $Id$
%==============================================================================
% LaTeX-Schema-Datei schema.tex
%==============================================================================
%==============================================================================
% Vorspann
%==============================================================================
% Dokumentstil für Buch
\documentclass[
a4paper, % Seitenformat A4
12pt, % 12-Punkt-Schrift
BCOR.5cm, % 0,5cm Rand für die Bindung
headsepline, % Trennlinie unter die Kopfzeile
pointlessnumbers, % Keine Punkte hinter den
% Gliederungsnummern
halfparskip, % Abstände zwischen den Absätzen, statt
% Einrückung der ersten Zeile
% draft, % Entwurfsmodus
final, % Release-Modus
twoside % Doppelseitig, für Buch
]{scrbook}
\usepackage{german} % deutsches Paket für Umlaute
\usepackage[latin1]{inputenc} % Codepage latin1
\usepackage{mathptmx} % Andere Schriften benutzen
\usepackage[scaled=.90]{helvet}
\usepackage{courier}
\usepackage{pifont} % für dinglist (Icon neben Text)
%\usepackage[dvips]{graphicx} % Grafikpaket für Bilder laden
%\usepackage{epstopdf} % .eps bei Bedarf nach .pdf wandeln
%\DeclareGraphicsRule{.tif}{bmp}{}{} % Grafikformate
%\usepackage{tabularx} % für Tabellen über die Seitenbreite
%\usepackage{longtable} % für Tabellen über die Seitenbreite
%\usepackage{supertabular} % für Tabellen über die Seitenbreite
\usepackage{ltxtable} % für Tabellen über die Seitenbreite
\usepackage{makeidx} % Index wird später eingefügt
\makeindex % durch \printindex
\usepackage{tocbibind} % TOC, Index etc. kommt in die TOC
\usepackage{fancybox} % Kästchen für Tastendarstellung
%\usepackage{moreverb} % Für Listings
\usepackage{listings} % Für Listings
\lstset{
extendedchars=true,
backgroundcolor=\color[gray]{0.95},
basicstyle=\ttfamily\footnotesize,
numbers=left,
numberstyle=\scriptsize,
stepnumber=2,
numbersep=5pt
}
% Für PDF
\usepackage[
pdftitle = {Shell-Programmierung},
pdfsubject = {Programmierung~der~Unix-Shell},
pdfkeywords = {shell~programmierung},
pdfauthor = {Ronald~Schaten},
bookmarks,
bookmarksopen,
bookmarksopenlevel = 1,
bookmarksnumbered,
linktocpage,
colorlinks,
linkcolor = black,
urlcolor = black
]{hyperref}
%\pdfinfo{/CreationDate (D:20000301170300-01'00')} % (D:YYYYMMDDhhmmss)
%% /ModDate (D:19980212201000) % ModDate is similar
\newcommand{\STRUT}{\rule{0in}{3ex}} % Ein vertikaler Abstand für Tabellen
\clubpenalty=10000 % gegen Schusterjungen
\widowpenalty=10000 % gegen Hurenkinder
%==============================================================================
% Anfang des Dokuments
%==============================================================================
\begin{document} % hiermit muß jedes Dokument beginnen
% Syntax-Boxen (sybox) definieren:
\fboxsep 1.36mm
\definecolor{g1}{gray}{0.95}
\newsavebox{\syntaxbox}
\newenvironment{sybox}
{\begin{lrbox}{\syntaxbox}
\begin{minipage}{\textwidth}}
{\end{minipage}
\end{lrbox}
{\fcolorbox{g1}{g1}
{\parbox{\textwidth}{\usebox{\syntaxbox}\hfill\hbox{}}}}}
\vspace*{.6in} % Die Titelseite
\thispagestyle{empty}
\begin{centering}
\rule{5in}{.04in}\\ \vspace{.25in}
\Huge {\bf SHELL\\ \vspace{.4in} PROGRAMMIERUNG}\\ \vspace{.1in}
\rule{5in}{.04in}\\ \vspace{.6in}
\large v2.0.1\\
\large \today\\ \vspace{.75in}
\large von\\ \vspace{.3in}
\LARGE {\bf Ronald Schaten} \\ \vspace{.6in}
\large ronald@schatenseite.de\\
\large http://www.schatenseite.de/\\
\end{centering}
\newpage
\thispagestyle{empty} % eine Leerseite
\begin{quote}
\emph{The best way to become acquainted with a subject is to write a book about it.
\begin{flushright}(Benjamin Disraeli)\end{flushright}}
\end{quote}
~\vfill
\footnotesize
Die aktuellste Version dieses Dokumentes befindet sich auf
\href{http://www.schatenseite.de/}{http://www.schatenseite.de/}.
Dieses Dokument ist entstanden, weil ich für mich selbst eine kompakte
Übersicht zu diesem Thema haben wollte. Ich beabsichtige nicht, damit in
irgendeiner Form Kommerz zu machen. Ich stelle es zur Verfügung, in der
Hoffnung, daß andere Leute daraus vielleicht einen Nutzen ziehen können.
\textbf{Aber ich übernehme keine Garantie für die Korrektheit der hier
dargestellten Dinge.}
Copyright \copyright{} 2000-2005 Ronald Schaten (ronald@schatenseite.de)
\textbf{Dieses Dokument steht unter der Creative Commons Lizenz.} Die
Weiterverbreitung ist unter gewissen Bedingungen (Namensnennung, keine
kommerzielle Nutzung und keine Bearbeitung) erlaubt und gewünscht. Ich habe
diese Lizenz gewählt um sicherzustellen daß Verbesserungen am Inhalt des
Dokumentes bei mir ankommen, damit ich sie in die `Hauptversion' einfließen
lassen kann.
Die Lizenzbedingungen stehen unter
\href{http://creativecommons.org/licenses/by-nc-nd/2.0/de/}{http://creativecommons.org/licenses/by-nc-nd/2.0/de/}.
% <!-- Creative Commons-Lizenzvertrag -->
% <a rel="license"
% href="http://creativecommons.org/licenses/by-nc-nd/2.0/de/"><img alt="Creative
% Commons-Lizenzvertrag" border="0"
% src="http://creativecommons.org/images/public/somerights20.gif" /></a><br />
% Diese Inhalt ist unter einer <a rel="license"
% href="http://creativecommons.org/licenses/by-nc-nd/2.0/de/">Creative
% Commons-Lizenz</a> lizenziert.
% <!-- /Creative Commons-Lizenzvertrag -->
%
%
% <!--
%
% <rdf:RDF xmlns="http://web.resource.org/cc/"
% xmlns:dc="http://purl.org/dc/elements/1.1/"
% xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
% <Work rdf:about="">
% <dc:title>Shell&amp;#45;Programmierung</dc:title>
% <dc:date>2005</dc:date>
% <dc:description>Einführung in die
% Shell&amp;#45;Programmierung</dc:description>
% <dc:creator><Agent>
% <dc:title>Ronald Schaten</dc:title>
% </Agent></dc:creator>
% <dc:rights><Agent>
% <dc:title>Ronald Schaten</dc:title>
% </Agent></dc:rights>
% <dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" />
% <license rdf:resource="http://creativecommons.org/licenses/by-nc-nd/2.0/de/"
% />
% </Work>
%
% <License rdf:about="http://creativecommons.org/licenses/by-nc-nd/2.0/de/">
% <permits rdf:resource="http://web.resource.org/cc/Reproduction" />
% <permits rdf:resource="http://web.resource.org/cc/Distribution" />
% <requires rdf:resource="http://web.resource.org/cc/Notice" />
% <requires rdf:resource="http://web.resource.org/cc/Attribution" />
% <prohibits rdf:resource="http://web.resource.org/cc/CommercialUse" />
% </License>
%
% </rdf:RDF>
%
% -->
Ich danke folgenden Personen, die mir bei der Durchsicht behilflich waren und
durch ihre konstruktive Kritik zu Verbesserungen beigetragen haben (in
chronologischer Reihenfolge ihres Eingreifens):
\begin{list}{$\bullet$}{\itemsep=-0.5cm}
\item Jürgen Ilse (ilse@asys-h.de)\\
\item Christian Perle (christian.perle@tu-clausthal.de)\\
\item Andreas Metzler (ametzler@downhill.at.eu.org)\\
\item Johannes Kolb (johannes.kolb@web.de)\\
\item Falk Friedrich (falk@gmx.de)\\
\item Kai Thöne (kai.thoene@gmx.de)\\
\end{list}
Und ich bitte alle Leser, auf eventuelle Fehler zu achten und mich darauf
aufmerksam zu machen. Auch abgesehen davon freue ich mich über jede
Rückmeldung.
Dieses Dokument entstand unter Verwendung von Linux, vim und \LaTeX. Dank an
deren Entwickler.
\normalsize
\newpage
\pagenumbering{roman}
%\renewcommand{\headrulewidth}{0.5pt}
\setcounter{tocdepth}{3}
\tableofcontents
\newpage
\pagenumbering{arabic}
% Haupttextteil
\include{was_ist_die_shell}
\include{wo_sind_unterschiede_zu_dos_batchdateien}
\include{wofuer_shell_programmierung}
\include{wie_sieht_ein_shell_skript_aus}
\include{werkzeugkasten}
\appendix
\include{beispiele}
\include{schmutzige_tricks}
\include{quellen}
\include{todo}
\printindex % Index einfügen
%==============================================================================
% Ende des Dokuments
%==============================================================================
\end{document}
%==============================================================================
% Ende von schema.tex
%==============================================================================