\begin{longtable}{|l|X|} % KILLED & LINE!!!! \kill \hline \endfirsthead \endhead \endfoot \hline \endlastfoot \textsl{Befehl}\texttt{ > }\textsl{Datei} & Standard-Ausgabe von \textsl{Befehl} in \textsl{Datei} schreiben. Die \textsl{Datei} wird überschrieben, wenn sie schon bestand. \tabularnewline\STRUT \textsl{Befehl}\texttt{ >{}> }\textsl{Datei} & Standard-Ausgabe von \textsl{Befehl} an \textsl{Datei} anhängen. Die \textsl{Datei} wird erstellt, wenn sie noch nicht bestand\footnote{In einigen sehr alten Versionen der \texttt{sh}\index{Bourne-Shell} und in der \texttt{csh}\index{C-Shell} wird die Datei nicht erstellt. Um hier sicherzugehen, sollte die Datei vorher mittels \texttt{touch}\index{touch=\texttt{touch}} erstellt werden.}. \tabularnewline\STRUT \textsl{Befehl}\texttt{ < }\textsl{Datei} & Standard-Eingabe für \textsl{Befehl} aus \textsl{Datei} lesen. \tabularnewline\STRUT \textsl{Befehl}\texttt{ << }\textsl{Delimiter} & Ein Here-Dokument: Der \textsl{Befehl} erhält den folgenden Abschnitt als Standard-Eingabe. Der Abschnitt endet, sobald der Delimiter am Zeilenanfang gefunden wird. Der Delimiter kann beliebig gewählt werden (siehe Beispiel). \tabularnewline\STRUT \textsl{Befehl1}\texttt{ | }\textsl{Befehl2} & Die Standard-Ausgabe von \textsl{Befehl1} wird an die Standard-Eingabe von \textsl{Befehl2} übergeben. Mit diesem Mechanismus können Programme als `Filter' für den Datenstrom eingesetzt werden. Das verwendete Zeichen heißt Pipe. \end{longtable}