ABSTRACT: es wird das konzep von unix pipes (ausgabe und eingabe umleitungen) und des "cat" befehls kurz erklaert. AUDIENCE: beginners SYSTEM: any unix SECTION: basic unix commands AUTHOR: mond COPYRIGHT: GNU Free Documentation Licence http://www.gnu.org/licenses/fdl.txt angenommen du willst die ausgabe von einem befehl in eier datei festhalten. dann geht das mit dem > symbol: fortune > blabla.txt wuerde eine datei erstellen dass blabla.txt heisst und in das die ausgabe von fortune reingeschrieben wurde. das file kannst du dann zb mit dem befehlt cat ausgeben: cat blabla.txt der befehl echo hallo welt gibt den text "hallo welt" auf dem bildschirm aus. damit erzeugt echo hallo welt > blabla.txt ein file blabla.txt mit diesem inhalt. falls das file schon exisitert wird es ueberschrieben. wenn man nicht ueberschreiben sondern anhaengen will verwendet man >> : date >> blabla.txt wuerde z.b. die ausgabe des befehls date (das aktuelle datum) an die datei blabla.txt anhaengen. das ganze funktioniert auch in umgekerte richtung. manche programme brauchen eingaen und mit dem pfeil in die andere richtung kann man aus einem file lesen und die daten an ein programm senden. z.b.: cat < blabla.txt tut zwar im grunde das selbe wie "cat blabla.txt" aber in obigen beispiel gibt cat nur aus wass es mittels < "hineingestopft" bekommt. eine andere form der umleitung passiert mit dem | (pipe) symbol. das leitet die ausgabe eines befehls zur eingabe eines anderen um. cat blabla.txt | less der unterschied hier ist dass nicht eine datei mit dem namen "less" erzeugt wird sonder die ausgabe in ein programm names "less" geschrieben wird. less kennst du ja schon aber das | geht mit vielen befehlen. davon werden wir aber andermal noch mehr kennen lernen. was zu beachten ist: den ausgabekannal ueber den die ausgeben eines befehles ablaufen nennt man "standard out" oder kurz STDOUT. den kanal ueber den die eingaben an einen kommando laufen heisst analog STDIN. die umleitung betrifft nur die "normale" ausgabe. fehlermeldungen werden ueber einen eigenn kanal ausgegeben. dieser wird "standard error" (STDERR) genannt. er ist von der normalen umleitung nicht betroffen. kann aber mit 2> umgeleitet werden. z.b: ls --diesen-switch-gibt-es nicht 2>fehlermeldung.txt (im obigen beispiel wird das ls kommando mit einem switch aufgerufen den es nicht kennt und das ls kommando wuerde sich darueber beschweren. die fehlermeldung wird hier mit dem 2> symbol in die datei fehlermeldung.txt geschrieben.) EXERCISES: erzeugen sie eine datei die in der ersten zeile das aktuelle datum und dann ein beliebiges fortune cookie enthaelt.. REFERENCES: http://www.strath.ac.uk/IT/Docs/IntroToUnix/node39.html http://www.ee.surrey.ac.uk/Teaching/Unix/unix3.html http://www.linuxdoc.org/HOWTO/Bash-Prog-Intro-HOWTO-3.html http://www.linuxdoc.org/HOWTO/Bash-Prog-Intro-HOWTO-4.html man bash