= Ausgabe = $ echo eins zwei drei stdout: das terminal. "alles ist eine datei" ausgabe fliesst.. wohin eigentlich? $ echo $TTY /dev/pts/67 geht schneller auch mit dem "tty" befehl: $ tty /dev/pts/67 = Umleitung = eher "umlenkung". ausgabe mit '>' ("groesser") umlenken in eine datei: $ echo eine kleine nachtnotiz.. > ~/.notizen $ ls -l !$ ls -l ~/.notizen -rw------- 1 guckes guckes 25 Nov 2 15:10 /home/user/guckes/.notizen das "!$" steht fuer "das letzte wort in der vorherigen zeile" ACHTUNG! $ echo noch eine kleine nachtnotiz.. > ~/.notizen $ ls -l ~/.notizen -rw------- 1 guckes guckes 30 Nov 2 15:11 /home/user/guckes/.notizen nur 30 zeichen? die datei wurde ueberschrieben. feature! daten *anhaengen* mit umleitung mit ">>" aka "doppel-groesser": zB datumsausgabe an die datei anhängen: $ date >> ~/.notizen datei ganz auf $TTY ausgeben $ cat ~/.notizen $ date >> $N variable "N" erzeugen mit dem dateinamen: $ N=~/.notiz $ echo $N /home/user/guckes/.notiz daten hinzufügen per "cat": $ cat >> $N ich schreibe eine weitere notiz.. ^D beendigung der eingabe mittels "End-of-Data": CTRL-D problem: wenn man doch mal '>' verwendet statt ">>", dann sind die daten überschrieben - und weg. :-( neue notiz mit aktuellem datum: function n () { N=~/.notiz; date >> $N; vim +$ $N } NOTE: bash mag diese definition nicht auf einer zeile. muss dann so aussehen: function n () { N=~/.notiz; date >> $N; vim +$ $N } = Editor = warum editoren verwenden? weil... 1000 gründe. hier sind ein paar: * cursor positionieren * anzeige der zeilennummern * anzeige der aktuelle position * ersetzungen (substitute aka search+replace) * einrücken+ausrücken (indent/deindent) * einstellungen für (vim speak) autoindent, expandtab, shiftwitdh, tabstop, textwidth * fensterunterteilungen (splitting) * menus! :-) * EOLs (mac/unix/windows) * undo+redo * abkürzungen * funktionen * key binding (aka mapping) * syntax colouring last, but not least: * automatische backups! :) == ed == == elvis == == nvi == == vi == --------------------------- == jed == == joe == ... --------------------------- == emacs == == vim == EOF