  Von DOS nach Linux HOWTO
  von Guido Gonzato (guido@ibogfs.cineca.it) und Tilo Wenzel
  v1.3-2, 20. November 1997

  Dieses HOWTO ist fr all die (bald ehemaligen?) DOS-Nutzer, die sich
  gerade entschlossen haben, den Sprung in die Welt von Linux, der
  freien UNIX-Variante zu wagen. Ausgehend von hnlichkeiten zwischen
  DOS und UNIX ist es der Zweck dieses Dokumentes, das Wissen des Lesers
  ber DOS in die UNIX-Welt hinberzubringen, damit er so schnell wie
  mglich auf dem neuen System produktiv werden kann.


  1.  Einfhrung



  1.1.  Ist Linux das richtige fr mich?


  Sie haben also vor, von DOS auf Linux zu wechseln? Gute Idee, aber
  Vorsicht: es ist vielleicht nicht das richtige System fr Sie. Meiner
  Meinung nach gibt es so etwas wie den besten Computer oder das beste
  Betriebssystem nicht: Es hngt davon ab, was man damit machen will.
  Darum glaube ich, da Linux nicht notwendig das beste System fr alle
  Leute ist, selbst wenn es technisch vielen kommerziellen
  Betriebssystemen berlegen ist. Typische Nutzer, die von Linux
  profitieren werden, sind Leute aus dem technischen Bereich, die Dinge
  wie TeX, Internet, Programmierung u.. betreiben.

  Weiterhin ist Linux sehr gut geeignet fr einen Einsatz als eine der
  vielen Arten von Server, da hier viel Software bereits dabei ist, die
  auf anderen Systemen erst fr viel Geld gekauft werden mu. Darber
  hinaus hat Linux oft deutlich geringere Hardwareanforderungen bei
  besserer Leistung als andere kommerzielle Serverbetriebssysteme.

  Wenn man hauptschlich kommerzielle Software benutzen will, sollte man
  sich vorher vergewissern, da entsprechendes auch vorhanden ist (es
  gibt z.B. einige Office Programme wie Star Office, welches fr den
  privaten Gebrauch kostenlos ist, Applixware oder Word Perfect). Wer
  nicht die Bereitschaft mitbringt, auch einmal in die Dokumentation zu
  schauen und das eine oder andere Konfigurationsfile von Hand mit dem
  Texteditor zu bearbeiten, der sollte sich besser nach etwas anderem
  umschauen. Auerdem wird unter Linux sehr viel mit der Kommandozeile
  gearbeitet. Ein paar Englischkenntnisse sind auch sehr hilfreich.

  Linux ist (im Moment) nicht so einfach zu benutzen wie z.B. Windows
  oder Mac. Man sollte daher bereit sein, in sein System etwas
  Bastelarbeit zu stecken. Trotzdem bin ich 100%'ig berzeugt, da, wenn
  man diese Art von Nutzer ist, man absolut begeistert von Linux sein
  wird. Es hngt alles nur von einem selbst ab. Auerdem kann man ja
  jederzeit noch andere Betriebssysteme wie DOS, Win 3.x, Win95 u.a.
  gleichzeitig auf der Platte haben.

  Voraussetzungen, die ich fr dieses Dokument mache:


    die grundlegenden DOS Kommandos und Begriffe sind bekannt;

    Linux ist - evtl. mit X-Windows - korrekt auf dem PC installiert;

    die Shell - das quivalent fr COMMAND.COM - ist bash;

    es ist klar, da dieses HOWTO nur einen allerersten Einstieg geben
     kann. Fr weitere Informationen kann man sich Matt Welsh's  Linux
     Installation and  Getting Started  und/oder Larry Greenfield's
     Linux User Guide zu Gemte fhren, die von

       metalab.unc.edu:/pub/Linux/docs/LDP


  bezogen werden knnen.



  Dieses HOWTO ersetzt das alte From DOS to Linux - Quick! mini-HOWTO.
  Man beachte, da, wenn nicht anderweitig vermerkt, sich alle
  Informationen auf das gute alte DOS beziehen. Es gibt einen Abschnitt
  ber Windows, aber man sollte immer im Gedchtnis behalten, da
  Windows und Linux ganz verschieden sind, im Gegensatz zu DOS, das eine
  Art armer Verwandter von UNIX ist.


  1.2.  Es ist das Richtige. Was jetzt?


  Sie haben gerade Linux und die Programme, die Sie brauchen, auf dem PC
  installiert. Sie haben sich einen Account eingerichtet (wenn nicht,
  sollte das schleunigst mit adduser nachgeholt werden) und Linux luft.
  Name und Pawort sind eingegeben, und Sie sitzen jetzt vor dem
  Bildschirm und fragen sich: "Was jetzt?".

  Nicht verzweifeln. Sie sind fast soweit, die Dinge auch unter Linux zu
  machen, die Sie von DOS her kennen und viele mehr. Wenn Sie jetzt
  unter DOS wren, wrden Sie wahrscheinlich einige der folgenden Dinge
  tun:


    Programme aufrufen, Dateien erstellen, kopieren, ansehen, lschen,
     drucken, umbenennen;

    mit Ihren Verzeichnissen arbeiten z.B. mit cd, md, rd, oder dir;

    Floppies formatieren und Dateien von/auf diese kopieren;

    anpassen Ihrer AUTOEXEC.BAT und CONFIG.SYS;

    schreiben von eigenen .BAT Dateien, QBasic, Pascal und C Programmen
     (oder was auch immer);

    und das verbleibende 1%.

  Sie werden erfreut sein, da diese Dinge unter Linux ganz hnlich
  funktionieren wie unter DOS. Der Durchschnittsnutzer verwendet unter
  DOS nur einen kleinen Teil der ber 100 verfgbaren Kommandos, was
  unter Linux mehr oder weniger hnlich aussieht.

  Noch ein paar Hinweise, bevor's weitergeht:

  Wie kommt man wieder heraus: Auf der Textkonsole CTRL-ALT-DEL drcken
  und warten, bis Linux alles Notwendige fr das Beenden des Systems
  getan hat und meldet, da alles erledigt ist (wer ganz sicher gehen
  will, wartet, bis der Computer wieder anfngt zu booten) und schaltet
  dann den Rechner aus. Unter X beendet man zunchst den X-Server mit
  CTRL-ALT-BACKSPACE oder mit einem entsprechenden Menpunkt des
  Windowmanagers. Danach kann dann Linux mit CTRL-ALT-DEL wie oben
  beendet werden. Niemals den Rechner einfach ausschalten, denn es
  knnte sein, da Linux ein paar Informationen noch nicht auf die
  Platte geschrieben hat und das Filesystem so beschdigt wird. Unter
  Win95 ist ein solches Vorgehen jetzt auch als "Systemabschlu"
  vorgeschrieben.

  Im Gegensatz zu DOS hat Linux eingebaute Sicherheitsmechanismen, da es
  als Multiuserbetriebssystem konzipiert ist. Dateien und Verzeichnisse
  besitzen Zugriffsrechte, so da nicht alle Dateien von allen Nutzern
  gelesen oder beschrieben werden knnen (Siehe Abschnitt ``Rechte und
  Eigentmer''). Die einzige Ausnahme ist der Nutzer mit dem Loginnamen
  root, der smtliche Rechte besitzt und der Systemverwalter ist. Wenn
  man an seinem eigenen PC arbeitet, ist man dann auch gleichzeitig sein
  eigener root. Man sollte sich jedoch grundstzlich nur dann als root
  im System anmelden, wenn die Dinge, die man erledigen will, dieses
  unbedingt erfordern. Dieser Mechanismus zur Trennung von verschiedenen
  Nutzern ist nicht mit dem Loginmechanismus von Win95 zu vergleichen.
  Dort dient er im Wesentlichen nur dazu, verschiedenen Nutzern
  verschiedene Konfigurationen ihrer Umgebung bereitzustellen. Viren,
  wild gewordenen Programmen und unvorsichtigen oder bswilligen Nutzern
  ist es nach wie vor mglich, wie unter DOS, das gesamte System mit
  allen Daten auf einen Streich ins Nirwana zu befrdern.

  Das Beste ist, man experimentiert einfach ein wenig herum und probiert
  die Sachen selber aus. Auch hier gilt: Nur als root arbeiten, wenn
  unbedingt notwendig. Hilfe kann man auf eine der folgenden Arten
  bekommen:



    Um Hilfe zu den internen Kommandos der Shell zu bekommen gibt man
     help ein;


    Um Hilfe zu einem bestimmten Kommando/Programm zu erhalten, gibt
     man man kommando ein. Das ruft die zu kommando gehrige Manualseite
     auf (die man page).


    info kommando ruft, falls verfgbar, die zu kommando gehrige info-
     Seite auf. Info ist ein auf Hypertext basierendes
     Dokumentationssystem. Am Anfang ist es vielleicht etwas
     gewhnungsbedrftig.


    Desweiteren kann man auch apropos kommando oder whatis kommando
     benutzen.


    Mit q kann die Betrachtung wieder beendet werden.


     Die Dokumentation ist im allgemeinen englisch, Teile sind aber auch
     schon ins Deutsche bersetzt worden.

  Ein Groteil der Mchtigkeit und der Flexibilitt von UNIX rhrt vom
  Konzept der Umleitung und des Pipings her, welches hier weit
  leistungsfhiger ist als unter DOS. Einfache Kommandos knnen auf
  diese Art und Weise kombiniert werden, um komplexe Aufgaben zu
  erledigen. Man sollte davon regen Gebrauch machen.

  Bezeichnungen: <...> bedeutet, da etwas angegeben werden mu, whrend
  [...] bedeutet, da die Angabe optional ist. Beispiel:



       $ tar -tf <file.tar> [> Zieldatei]




  file.tar mu angegeben werden, whrend die Umleitung in die Datei
  Zieldatei nicht zwingend ist.

  Von jetzt ab steht MSL hier als Abkrzung fr Bitte die Manualseiten
  fr weitere Informationen zu Rate ziehen


  1.3.  Fr Ungeduldige


  Wollen Sie sofort loslegen? Dann eine kurze bersicht:














  DOS                     Linux                   Bemerkung
  _____________________________________________________________________________

  BACKUP                  tar -Mcvf device dir/   vllig anders
  CD dirname\            cd dirname/             fast die gleiche Syntax
  COPY file1 file2        cp file1 file2          dito
  DEL file                rm file                 Vorsicht - kein undelete
  DELTREE dirname         rm -R dirname/          dito
  DIR                     ls                      nicht ganz die gleiche Syntax
  EDIT file               vi file                 sehr gewhnungsbedrftig
                          emacs file              etwas besser
                          jstar file              etwa wie DOS' edit
  FORMAT                  fdformat                unterschiedliche Syntax
                          mount, umount
  HELP command            man command             gleiches Schema
  MD dirname              mkdir dirname/          fast die gleiche Syntax
  MOVE file1 file2        mv file1 file2          dito
  NUL                     /dev/null               dito
  PRINT file              lpr file                dito
  PRN                     /dev/lp0,
                          /dev/lp1                dito
  RD dirname              rmdir dirname/          fast die gleiche Syntax
  REN file1 file2         mv file1 file2          nicht fr mehrere Dateien
  RESTORE                 tar -Mxpvf device       andere Syntax
  TYPE file               less file               viel besser
  WIN                     startx                  Dazwischen liegen Welten!




  Wenn Sie mehr als nur eine Tabelle haben wollen, knnen Sie weiteres
  in den folgenden Abschnitten erfahren.


  2.  Dateien und Programme



  2.1.  Dateien: Grundlegende Begriffe


  Die Struktur des Filesystems von Linux ist fr den Benutzer nach auen
  hin der von DOS recht hnlich. Mit Struktur des Filesystems ist hier
  die Anordnung von Verzeichnissen und der darin enthaltenen Dateien
  gemeint.  Die Namen fr Verzeichnisse und Dateien gehorchen bestimmten
  Regeln, Dateien werden in Verzeichnissen abgelegt, es gibt ausfhrbare
  Dateien und diese haben oft auch wie unter DOS
  Kommandozeilenparameter. Darber hinaus kann man auch Platzhalter,
  Umlenkung und Piping verwenden. Es gibt jedoch gegenber DOS ein paar
  Unterschiede:

  Unter DOS sind die Dateinamen in der 8.3-Form, d.h. wie etwa
  NICHGENG.TXT. Unter Linux sind die Regeln fr Dateinamen bei Benutzung
  des UMSDOS- oder EXT2-Filesystems wesentlich liberaler, vergleichbar
  etwa mit Win95. Es knnen bis zu 255 Zeichen verwandt werden, und der
  Punkt kann beliebig oft auftreten. Ein Beispiel fr einen Dateinamen
  unter Linux ist z.B. Das_ist.ein.SEHR_langer.dateiname.  Man beachte,
  da hier sowohl groe als auch kleine Buchstaben verwandt werden, denn
  es wird auch hier zwischen groen und kleinen Buchstaben im Gegensatz
  zu DOS unterschieden. Das heit, FILENAME.tar.gz und filename.tar.gz
  sind zwei unterschiedliche Dateien. So ist ls ein Kommando, LS dagegen
  wird hchst wahrscheinlich nur eine Fehlermeldung bringen.

  Windows 95 Nutzer werden wahrscheinlich Leerzeichen innerhalb der
  Dateinamen verwenden wollen. Wenn ein Name solche enthlt (was nicht
  sehr empfehlenswert ist), mu er immer wenn er verwendet wird in
  Anfhrungszeichen eingeschlossen werden. Beispielsweise:



       $ # das folgende Kommando legt ein Verzeichnis namens "Meine alten Dateien"
       $ mkdir "Meine alten Dateien"
       $ ls
       Meine alten Dateien     bin     tmp




  Einige Zeichen knnen zwar verwendet werden, sollten es aber nicht,
  wie zum Beispiel !*$&. Ich will nicht erklren wie man das macht, denn
  es ist wirklich keine gute Idee. Diese Zeichen haben alle eine
  spezielle Bedeutung fr die Shell, und wenn sie in Dateinamen
  auftauchen, kann das unerwartete Ergebnisse zeitigen wenn man nicht
  genau aufpat.

  Fr Programme gibt es keine zwangsweisen Erweiterungen wie .exe .com
  oder .bat fr Batchdateien. Ausfhrbare Programme werden beim
  Auflisten mit dem Kommando ls -F mit einem Sternchen '*' am Ende des
  Namens versehen, zum Beispiel:



       $ ls -F
       Brief_an_Joe  cindy.jpg  cjpg*  Ein_Verzeichnis/  mein_1._script* alt~




  Hier sind die Dateien cjpg und mein_1._script ausfhrbar, d.h.
  Programme. Man beachte, da der Stern nicht Teil der Dateinamen ist,
  sondern nur zur Kennzeichnung als ausfhrbar beim Auflisten dient.
  Unter DOS enden Backup-Dateien blicherweise auf .BAK, whrend sie
  unter Linux im allgemeinen mit einer Tilde '~' enden. Wenn Linux
  entsprechend konfiguriert ist, knnen Auflistungen von Verzeichnissen
  auch farbig gekennzeichnet werden. Namen von Programmen knnten z.B.
  rot ausgegeben werden, Verzeichnisse blau und Bilder lila. Dateien,
  deren Name mit einem Punkt beginnt, werden als versteckte Dateien
  behandelt. Sie werden bei einem normalen Auflisten mit ls nicht
  angezeigt. Die Datei .Ich.bin.eine.versteckte.Datei wird also
  normalerweise bei einer Auflistung ignoriert, erst ein ls -a bringt
  sie zum Vorschein.

  Optionen und Schalter werden unter DOS als /schalter angegeben, unter
  Linux mit -schalter oder --schalter. Beispiel: dir /s wird zu ls -R.
  Man beachte, da viele DOS-Programme Schalter nach UNIX-Art verwenden,
  so z.B. PKZIP oder ARJ.

  Wer will, kann jetzt mit dem Abschnitt ``bertragen von Kommandos von
  DOS nach Linux'' weitermachen, aber es ist ntzlich, sich vorher noch
  kurz ein paar Dinge anzuschauen, die es nicht in DOS oder Windows
  gibt.


  2.2.  Links


  UNIX hat noch einen weiteren Dateityp, der bei DOS nicht existiert. Es
  ist der Link. Ein Link ist eigentlich keine richtige Datei, sondern
  nur eine Art Verweis auf eine andere, bereits existierende Datei oder
  Verzeichnis.  Es gibt zwei Typen von Links, den Hardlink und den
  symbolischen Link. Es soll hier nicht weiter auf den Unterschied
  zwischen beiden eingegangen werden, da sie sich uerlich fr den
  Nutzer kaum unterscheiden.  Heutzutage werden blicherweise vorwiegend
  symbolische Links eingesetzt, da sie etwas flexibler sind. Am ehesten
  vergleichbar sind symbolische Links mit den Win95 Shortcuts. Beispiele
  fr symbolische Links sind z.B. das Verzeichnis /usr/X11 welches ein
  Link auf /usr/X11R6 ist und /dev/modem, welches entweder auf /dev/cua0
  oder /dev/cua1 zeigt.

  Um einen symbolischen Link anzulegen gibt man ein:



       $ ln -s <Datei_oder_Verzeichnis> <Linkname>




  Beispiele:



       $ ln -s /usr/doc/g77/DOC g77manual.txt




  Jetzt kann man sich auf g77manual.txt beziehen anstelle von
  /usr/doc/g77/DOC.  Links werden bei der Auflistung eines
  Verzeichnisses wie folgt angezeigt:



       $ ls -F
       g77manual.txt@
       $ ls -l
       (verschiedene Angaben zur Datei ...)   g77manual.txt -> /usr/doc/g77/DOC





  2.3.  Rechte und Eigentmer


  Dos-Dateien haben folgende Attribute: A (archivieren), H (versteckt),
  R (nur lesbar) und S (System). Nur H und R sind unter Linux sinnvoll:
  H sind Dateien die mit einem Punkt anfangen, und R wird spter
  besprochen.

  Unter UNIX besitzt jede Datei Rechte und einen Eigentmer, der
  wiederum zu einer Gruppe gehrt. Hier ein Beispiel:



       $ ls -l /bin/ls
       -rwxr-xr-x  1  root  bin  27281 Aug 15 1995 /bin/ls*




  Das erste Feld enthlt die Rechte der Datei /bin/ls, die root gehrt,
  sowie der Gruppe bin. Die Zeichenfolge -rwxr-xr-x bedeutet von links
  nach rechts:

  - ist der Dateityp (- = normale Datei, d = Verzeichnis, l = Link,
  usw.); rwx sind die Rechte fr den Eigentmer der Datei
  (lesen,schreiben,ausfhren); r-x sind die Rechte fr die Gruppe des
  Eigentmers (lesen,ausfhren) - auf das Prinzip von Gruppen soll hier
  nicht weiter eingegangen werden, man kann als Anfnger auch sehr gut
  ohne das auskommen ;-) - ; r-x sind die Rechte fr den Rest der Nutzer
  (lesen,ausfhren). Fr die Leute, bei denen Englisch nicht die zweite
  Muttersprache ist, hier die englische Bedeutung der Krzel: r - Read,
  w - Write, x - eXecute, sowie beim Dateityp d fr Directory.  Der Rest
  der Ausgabe soll hier nicht weiter behandelt werden, wer Nheres
  wissen will kann in den einschlgigen Bchern nachlesen (z.B. im Buch
  von Matt Welsh).

  Im Falle unseres /bin/ls kann man also die Datei nicht verndern, es
  sei denn, man ist root: alle anderen haben nicht die notwendigen
  Schreibrechte. Das Kommando, um die Rechte einer Datei zu ndern, ist:



       $ chmod <werXrecht> <datei>




  wobei wer fr den steht, dessen Rechte gendert werden, also entweder
  u (user, der Eigentmer), g (group, die Gruppe), o (other,der Rest)
  oder a (all, alle Nutzer), X ist entweder +, - oder =, je nachdem, ob
  das Recht hinzugefgt oder weggenommen wird, bzw. auf den angegebenen
  Wert gesetzt wird, und recht ist das Recht, was gendert wird, also
  entweder r (read), w (write), oder x (execute).

  Beispiele:



       $ chmod u+x file




  setzt die Ausfhrungsrechte fr den Eigentmer.



       $ chmod go-wx file




  nimmt das Schreibrecht und das Ausfhrungsrecht fr alle auer den
  Eigentmer weg.



       $ chmod ugo+rwx file




  setzt fr alle Schreib-, Lese- und Ausfhrungsrechte. Man kann hier
  auch die Folge ugo einfach durch a ersetzen.



       $ chmod u+s file




  dieses setzt das sogenannte (oben nicht erwhnte) setuid oder suid
  Recht (meistens setuid-Bit genannt). Damit wird eine Datei, wenn sie
  ausfhrbar ist, automatisch beim Aufruf mit den Rechten des
  Eigentmers ausgefhrt und nicht wie sonst blich mit den Rechten des
  Aufrufers. Gehrt die Datei z.B. root, wird sie mit root-Rechten
  ausgefhrt und hat somit vollen Zugriff auf das System (und kann bei
  einem Fehler auch entsprechenden Schaden anrichten). Also Vorsicht mit
  dem Setzen des suid-Bits.


  Ein krzerer Weg zur Angabe von Rechten ist die Angabe von Zahlen:
  rwxr-xr-x kann z.B. als 755 angegeben werden. Dabei entspricht jeder
  Buchstabe einem Bit: --- ist 0, --x ist 1, -w- ist 2, -wx ist 3... .
  Es ist zu Beginn etwas gewhnungsbedrftig, aber nach und nach bekommt
  man Routine mit diesen Werten.

  Normalerweise darf nur der die Rechte einer Datei ndern, der auch ihr
  Eigentmer ist. Root jedoch als sogenannter Superuser kann die Rechte
  aller Dateien ndern. Zum Kommando chmod gibt es noch weiteres zu
  sagen, das aber nicht in diesen Rahmen pat. Also --- MSL.


  2.4.  bertragen von Kommandos von DOS nach Linux


  Auf der linken Seite ist das DOS Kommando aufgefhrt, auf der Rechten
  das Linux-Pendent



       COPY:           cp
       DEL:            rm
       MOVE:           mv
       REN:            mv
       TYPE:           more, less, cat




  Umleitungs- und Pipingoperatoren:  < > >> |

  Platzhalter: * ?

  nul: /dev/null

  prn, lpt1:   /dev/lp0 or /dev/lp1; lpr

  Beispiele:


















  DOS                                     Linux
  ________________________________________________________________

  C:\GUIDO>copy joe.txt joe.doc           $ cp joe.txt joe.doc
  C:\GUIDO>copy *.* total                $ cat * > total
  C:\GUIDO>copy fractals.doc prn         $ lpr fractals.doc
  C:\GUIDO>del temp                       $ rm temp
  C:\GUIDO>del *.bak                     $ rm *~
  C:\GUIDO>move paper.txt tmp\          $ mv paper.txt tmp/
  C:\GUIDO>ren paper.txt paper.asc       $ mv paper.txt paper.asc
  C:\GUIDO>print letter.txt              $ lpr letter.txt
  C:\GUIDO>type letter.txt               $ more letter.txt
  C:\GUIDO>type letter.txt               $ less letter.txt
  C:\GUIDO>type letter.txt > nul         $ cat letter.txt > /dev/null
  nicht vorhanden                         $ more *.txt *.asc
  nicht vorhanden                         $ cat section*.txt | less




  Bemerkungen:

  Der * ist unter Linux intelligenter: * pat auf alle Dateien, auer
  auf die versteckten, *.* pat nur auf solche Dateien, die ein '.' in
  der Mitte oder am Ende haben, p*r pat auf `peter' und `pfeiffer' (mit
  3 f ;-), *c* pat auf `picken', `pack.txt', `mac' und `c' selbst.

  Wenn man more benutzt, kann man mit LEERTASTE in der Datei
  weiterblttern, mit 'q' oder CTRL-C beendet man es. less ist etwas
  intuitiver und lt einen mit den Cursortasten durch die Datei
  wandern.  Manchmal ist more einfach nur ein Link auf less, so da sich
  beide gleich verhalten.

  Es gibt kein UNDELETE, also zweimal berlegen bevor man etwas lscht.

  Zustzlich zu den DOS-blichen < > >> hat Linux noch 2> um
  Fehlermeldungen umzulenken (stderr). Darber hinaus lenkt 2>&1 stderr
  nach stdout um und 1>&2 stdout nach stderr.

  Linux hat noch einen anderen Platzhalter: das []. Verwendung: [abc]*
  pat z.B. auf alle Dateien, die auf a, b oder c beginnen; *[I-N,1,2,3]
  pat auf alle Dateien, die mit I, J, K, L, M, N, 1, 2 oder 3 enden.

  Es gibt standardmig kein DOS-hnliches RENAME; d.h. mv *.xxx *.yyy
  funktioniert nicht. Es gibt jedoch ein Programm namens mmv (Multiple
  MoVe), das Analoges leistet. Es ist in vielen Distributionen bereits
  enthalten. Um die Shell daran zu hindern, den Platzhalter selber zu
  interpretieren, mu der erste Dateiname in Anfhrungszeichen
  eingeschlossen werden. Beispiel:



       # mmv '*.xxx' #1.yyy




  #1 wird hierbei durch den zum ersten (und in diesem Falle einzigen)
  Platzhalter in *.xxx passenden String ersetzt. Es gibt noch ein paar
  andere kleine Unterschiede zu RENAME, also hier wieder mal --- MSL.

  Man benutze cp -i und mv -i , um gewarnt zu werden, wenn eine Datei
  dadurch berschrieben wrde;



  2.5.  Programme starten: Multitasking und Sessions


  Um ein Programm auszufhren, gibt man einfach den Namen wie unter DOS
  ein.  Falls das Verzeichnis (Abschnitt ``Verzeichnisse''), in dem sich
  das Programm befindet, im Pfad PATH (Abschnitt ``Der Systemstart'')
  ist, wird das Programm starten. Unterschied zu DOS: ein Programm, das
  sich im aktuellen Verzeichnis befindet, wird nicht gefunden - es sei
  denn, das aktuelle Verzeichnis ist als '.' explizit im Pfad enthalten.
  Wenn nicht, hilft ein ./programm. Hinweis: das aktuelle Verzeichnis
  ist unter UNIX/Linux oft am Ende des Pfades eingetragen (aus Grnden
  der Systemsicherheit), d.h. es werden erst alle anderen Verzeichnisse
  nach programm durchsucht und zum Schlu erst das aktuelle Verzeichnis.
  Wenn man z.B. ein kleines Progrmmchen geschrieben hat und es test
  nennt, wird, wenn man es mit test aufruft und nicht mit ./test, zuerst
  das UNIX-Kommando test selbigen Namens gefunden (oder die Shell-
  interne Funktion, je nach Shell) und ausgefhrt und nicht das eigene
  Programm im aktuellen Verzeichnis. Das fhrt oft zu langem Grbeln,
  bis man endlich merkt, da das falsche Programm aufgerufen wurde, denn
  test ohne Parameter gibt keinerlei Meldungen o.. aus. Auf diesen
  "Trick" sind schon Generationen von Einsteigern hereingefallen und
  werden wahrscheinlich auch noch weitere Generationen hereinfallen.

  Hier das Aussehen eines typischen Kommandos:



       $ kommando -s1 -s2 ... -sn par1 par2 ... parn < input > output




  wobei -s1, ..., -sn die Programmschalter sind und par1, ..., parn die
  Parameter. Der Rest sind die Umlenkungen, d.h. das Programm erhlt
  seine Eingaben aus der Datei input und schreibt die Ausgaben in die
  Datei output. Es mssen natrlich nicht immer alle Teile enthalten
  sein. Mehrere Kommandos hintereinander knnen so eingegeben werden:



       $ kommando1 ; kommando2 ; ... ; kommandon




  Das ist alles, was man braucht, um ein Kommando aufzurufen. Es gibt
  jedoch darber hinaus Mglichkeiten, die Linux zustzlich zu den von
  DOS bekannten bietet. Einer der Grnde die fr Linux sprechen ist es,
  da es ein Betriebsystem mit Multitasking ist, d.h. es kann mehrere
  Programme (ab jetzt Prozesse genannt) gleichzeitig ausfhren. Man kann
  einen Proze im Hintergrund starten und mit einem anderen
  weiterarbeiten. Darber hinaus bietet Linux auch mehrere Sitzungen
  (Sessions) gleichzeitig an. Es ist so, als ob man an mehreren Rechnern
  arbeiten wrde.

  Um zu den Sessions 1..6 zu wechseln:



       $ ALT-F1 ... ALT-F6




  Wenn man gerade unter X-Windows ist, benutzt man statt dessen CTRL-
  ALT-Fn.
  Um eine neue Session zu starten ohne die aktuelle zu verlassen (z.B.
  um als anderer Nutzer mit anderen Rechten weiterzuarbeiten):



       $ su - <loginname>




  Beispiel:



       $ su - root




  Dieses ist ntzlich wenn man etwas erledigen mu, was normalerweise
  nur root darf, z.B. eine Floppy mounten (siehe ``Floppies, Harddisks,
  und hnliches'').

  Um eine Session zu beenden:



       $ exit




  Wenn es noch angehaltene Jobs gibt (siehe unten), wird man gewarnt.

  Um einen Proze im Vordergrund zu starten:



       $ progname [-schalter] [parameter] [< input] [> output]




  Um einen Proze im Hintergrund zu starten, fgt man ein Kaufmanns-Und
  am Ende der Zeile hinzu: '&'



       $ progname [-schalter] [parameter] [< input] [> output] &
       [1] 123




  Die Shell gibt dem Proze eine Jobnummer (z.B. [1]; siehe unten) und
  eine PID (ProzessID), 123 in unserem Beispiel.

  Um alle Prozesse auflisten zu lassen:


       $ ps -a




  Dieses gibt eine Liste aller gerade laufenden Prozesse aus.
  Um einen Proze zu beenden:


       $ kill <PID>




  Dies ist ntzlich, um einen Proze zu beenden, wenn man entweder nicht
  wei, wie man das Programm "vorschriftsmig" beendet, oder diese
  eigentlich vorgesehene Methode nicht mehr funktioniert.  Manchmal kann
  ein Proze nur noch durch folgendes Kommando beendet werden:


       $ kill -9 <PID>




  kill -9 beendet jeden Proze, da dieses Signal nicht vom Proze abge
  fangen werden kann, d.h. der Proze wird vom Betriebssystem
  zwangsweise rausgeschmissen.

  Darber hinaus erlaubt es die Shell, einen Proze zu stoppen oder
  zeitweise anzuhalten, einen laufenden Proze in den Hintergrund zu
  schicken, oder aus dem Hintergrund in den Vordergrund zu holen. In
  diesem Zusammenhang werden die Prozesse Jobs genannt.

  Um sich die laufenden Jobs der aktuellen Shell anzuschauen:


       $ jobs




  hierbei werden Jobs durch ihre Nummer und nicht durch ihre PID
  gekennzeichnet.

  Um einen im Vordergrund laufenden Proze anzuhalten (funktioniert
  nicht immer, das Programm kann das explizit verhindern):


       $ CTRL-C




  Um einen im Vordergrund laufenden Proze zeitweise anzuhalten (dito):


       $ CTRL-Z




  Um einen vorbergehend angehaltenen Proze in den Hintergrund zu
  schicken (dadurch wird er zu einem Job):


       $ bg <job>





  Um einen Job in den Vordergrund zu bringen:


       $ fg <job>




  Um einen Job zu beenden:


       $ kill <%job>




  wobei <job> 1, 2, 3, ... sein kann. Mit diesen Kommandos kann man
  Disketten formatieren, Archive komprimieren, Programme kompilieren,
  Berechnungen ausfhren usw. und trotzdem noch einen benutzbaren Prompt
  haben. Man versuche das einmal mit DOS! Windows kennt zwar auch Multi
  tasking, jedoch ist das System meistens mit einem Programm bereits so
  ausgelastet, da es fr ein sinnvolles Arbeiten mit einem weiteren
  kaum noch reicht.


  2.6.  Programme via Netz auf anderen Rechnern ausfhren


  Um ein Programm auf einem anderen Rechner auszufhren, dessen Adresse
  z.B.  remote.bigone.edu ist, gibt man ein:



       $ telnet remote.bigone.edu




  nachdem man eingeloggt ist, kann man sein gewnschtes Programm
  starten.  Natrlich mu man einen Account (Zugangsberechtigung) auf
  dieser Maschine haben. Wenn man X-Windows benutzt, kann man sogar ein
  X-Programm auf dem anderen Rechner starten und sich die Ausgabe auf
  den eigenen Rechner umlenken. Wenn remote.bigone.edu der entfernte
  Rechner ist und local.linux.box.de der eigene Linuxrechner, mu man
  folgendes machen, um ein Programm auf remote.bigone.edu zu starten und
  es von local.linux.box.de aus zu bedienen:



    X11 auf local.linux.box.de starten, ebenso ein xterm oder
     quivalentes. Dort gibt man ein:



       $ xhost +remote.bigone.edu
       $ telnet remote.bigone.edu





    nach dem einloggen auf dem entfernten Rechner:




  remote:$ DISPLAY=local.linux.box.de:0.0
  remote:$ progname &





  (anstelle von DISPLAY..., mu man evtl. setenv DISPLAY
  local.linux.box.de:0.0 eingeben. Das hngt von der Shell auf dem ent
  fernten Rechner ab.)

  Und siehe da! progname startet jetzt auf remote.bigone.edu und wird
  auf dem eigenen lokalen Rechner angezeigt. Man sollte jedoch
  vorsichtig sein beim Versuch, dies ber eine langsame Modemleitung
  o.. zu machen. Bei so geringer Transferrate drfte ein sinnvolles
  Arbeiten kaum mglich sein. Dafr gibt es eine spezielle Abart des X
  Windows, das Low-Bandwidth X, das hier jedoch nicht nher besprochen
  werden soll.


  3.  Verzeichnisse



  3.1.  Vorbemerkungen


  Wir haben bereits die Unterschiede zwischen Dateien unter DOS/Windows
  und Linux besprochen. Was Verzeichnisse angeht, ist das
  Wurzelverzeichnis unter DOS \, whrend es unter Linux / ist. Ebenso
  werden Verzeichnisse in Pfadnamen unter DOS durch ein \ voneinander
  getrennt, unter Linux durch ein /.  Darber hinaus gibt es unter Linux
  keine Laufwerke wie z.B. C: unter DOS.  Wenn man mehrere Festplatten
  oder Partitionen hat, werden diese unter Linux zu einem einzigen
  Verzeichnisbaum zusammengefat. Beispiele fr Dateipfade:



       DOS:    C:\PAPERS\GEOLOGY\MID_EOC.TEX
       Linux:  /home/guido/papers/geology/mid_eocene.tex




  Wie blich ist .. das bergeordnete Verzeichnis und . das aktuelle.
  Man beachte, da man nicht berall in jedes Verzeichnis mit cd
  wechseln kann, oder mit rmdir oder mkdir Verzeichnisse lschen bzw.
  anlegen kann, in Abhngigkeit davon, ob man die entsprechenden Rechte
  hat oder nicht. Jeder Nutzer befindet sich nach dem Einloggen in
  seinem eigenen Verzeichnis, blicherweise als HOME-Verzeichnis
  bezeichnet. Auf meinem PC ist mein Home-Verzeichnis z.B.  /home/guido.


  3.2.  Zugriffsrechte von Verzeichnissen


  Verzeichnisse haben natrlich auch Zugriffsrechte wie Dateien. Die
  Rechte, die im Abschnitt ``Rechte und Eigentmer'' fr Dateien
  besprochen wurden, existieren auch analog bei Verzeichnissen
  (user,group,other). Fr ein Verzeichnis bedeutet rx, da man in das
  Verzeichnis wechseln kann und sich den Inhalt auflisten lassen kann. w
  dagegen bedeutet, da man eine Datei im Verzeichnis lschen kann oder
  eine neue anlegen. Man kann eine Datei in einem Verzeichnis, fr das
  man Schreibrechte besitzt, auch dann lschen, wenn die Datei fr einen
  eigentlich schreibgeschtzt ist. Das System fragt zwar an, ob man die
  Datei wirklich lschen will, aber wenn man ja sagt verschwindet die
  Datei.  Der Schreibschutz fr Dateien bezieht sich nur auf das
  Verndern der Datei selber. Das Lschen einer Datei ist aber eine
  nderung am Verzeichnis, denn die Datei selbst wird nicht verndert,
  sondern nur ihr Eintrag aus dem Verzeichnis entfernt.

  Um z.B. zu verhindern, da andere Nutzer im Verzeichnis
  /home/guido/text herumschnffeln, gibt man ein:



       $ chmod o-rwx /home/guido/text





  3.3.  bertragen von Kommandos von DOS nach Linux




       DIR:            ls, find, du
       CD:             cd, pwd
       MD:             mkdir
       RD:             rmdir
       DELTREE:        rm -R
       MOVE:           mv




  Beispiele:




       DOS                                     Linux
       ________________________________________________________________

       C:\GUIDO>dir                           $ ls
       C:\GUIDO>dir file.txt                  $ ls file.txt
       C:\GUIDO>dir *.h *.c                   $ ls *.h *.c
       C:\GUIDO>dir/p                         $ ls | more
       C:\GUIDO>dir/a                         $ ls -l
       C:\GUIDO>dir *.tmp /s                  $ find / -name "*.tmp"
       C:\GUIDO>cd                            $ pwd
       nicht vorhanden - siehe Bemerkung       $ cd
               dito                            $ cd ~
               dito                            $ cd ~/temp
       C:\GUIDO>cd \other                    $ cd /other
       C:\GUIDO>cd ..\temp\trash                    $ cd ../temp/trash
       C:\GUIDO>md newprogs                   $ mkdir newprogs
       C:\GUIDO>move prog ..                  $ mv prog ..
       C:\GUIDO>md \progs\turbo                     $ mkdir /progs/turbo
       C:\GUIDO>deltree temp\trash           $ rm -R temp/trash
       C:\GUIDO>rd newprogs                   $ rmdir newprogs
       C:\GUIDO>rd \progs\turbo                     $ rmdir /progs/turbo




  Bemerkungen:


  1. Bei der Benutzung von rmdir mu das zu lschende Verzeichnis leer
     sein. Will man ein Verzeichnis mitsamt seinem Inhalt auf einmal
     loswerden hilft ein rm -R. VORSICHT! Mit diesem Befehl kann man
     ganze Verzeichnisbume auf Nimmerwiedersehen verschwinden lasen.
     Also zweimal berlegen.

  2. Das Zeichen '~' ist eine Abkrzung fr den Namen des eigenen Home-
     Verzeichnisses, wenn es am Anfang des Pfad/Dateinamens steht.  Das
     Kommando  cd oder cd ~ bringen einen sofort ins eigene Home-
     Verzeichnis, egal wo man gerade ist. cd ~/tmp bringt einen demnach
     ins Verzeichnis /Pfad_zum_Homeverzeichnis/tmp.

  3. cd - ist ein "undo" fr das letzte cd.


  4.  Floppies, Harddisks und hnliches



  4.1.  Devices verwalten


  Wenn man unter DOS ein FORMAT A: macht, geschehen drei Dinge: 1. Die
  Diskette wird physisch formatiert, d.h. es werden Spuren und Sektoren
  darauf angelegt; 2. es wird das A:\ Verzeichnis angelegt und damit ein
  DOS-Filesystem; 3. die Diskette wird dem Nutzer zum Zugriff zur
  Verfgung gestellt. Diese drei Schritte werden unter Linux separat
  behandelt. Man kann Disketten im MSDOS-Format verwenden, es gibt aber
  auch andere Formate die z.B. lange Dateinamen und auch Zugriffsrechte
  untersttzen. Hier die Schrittfolge zum Vorbereiten einer Diskette
  (man mu dazu root sein):

  Formatieren einer Standard 1,44 MB Floppydisk (A:):


       # fdformat /dev/fd0H1440




  Filesystem erstellen:


       # mkfs -t ext2 -c /dev/fd0H1440




  Anstelle von /dev/fd0H1440 mu auf manchen Systemen auch /dev/fd0h1440
  verwendet werden.  Hiermit wird das Standard-Linuxfilesystem, das
  ext2-Filesystem, auf der Diskette angelegt. Dieses Filesystem ist
  jedoch fr kleine Datentrger wie Disketten eigentlich nicht so gut
  geeignet, da es fr die Verwaltung groer Festplatten entwickelt
  wurde. Daher wird fr Disketten, auf denen man ein UNIX-artiges
  Filesystem haben will, das Minix-Filesystem eingesetzt.


       # mkfs -t minix -c /dev/fd0H1440




  Um ein MS-DOS Filesystem zu erstellen, benutzt man folgendes Kommando:


       # mformat a:


  oder


       # mkfs -t msdos -c /dev/fd0H1440




  Vor der Benutzung der Diskette mu sie gemountet werden:


       # mount -t <typ> /dev/fd0H1440 /mnt




  wobei <typ> der Type des Filesystems ist, mit dem die Diskette for
  matiert wurde, also ext2, minix oder msdos. Jetzt kann man auf die
  Floppy zugreifen. Der Inhalt der Floppy steht jetzt als Inhalt des
  Verzeichnisses /mnt zur Verfgung, d.h. das Verzeichnis /mnt
  entspricht jetzt der Diskette.  Wenn man fertig ist, mu man die
  Diskette wieder unmounten.

  Zum unmounten der Disk:


       # umount /mnt




  Jetzt kann man die Diskette aus dem Laufwerk entnehmen. Natrlich mu
  man Disketten nur dann formatieren und ein Filesystem anlegen, wenn
  dieses auf den Disketten noch nicht geschehen ist. Fr Laufwerk B:
  ersetzt man einfach fd0H1440 durch fd1H1440 in der obigen Anleitung.
  Alles was man unter DOS mit A: und B: gemacht hat, wird jetzt mit dem
  Verzeichnis /mnt gemacht. Beispiele:




       DOS                                     Linux
       ____________________________________________________________________

       C:\GUIDO>dir a:                        $ ls /mnt
       C:\GUIDO>copy a:*.*                    $ cp /mnt/* /docs/temp
       C:\GUIDO>copy *.zip a:                 $ cp *.zip /mnt/zip
       C:\GUIDO>a:                            $ cd /mnt
       A:>_                                    /mnt/$ _




  Wenn Sie dieses ganze mounten/unmounten von Disketten nicht mgen,
  benutzen Sie die mtools suite: dieses ist ein Satz von Kommandos, die
  wie ihr jeweiliges DOS-Gegenstck arbeiten, jedoch jeweils mit einem
  `m' anfangen, also mformat, mdir, mdel und so weiter. Sie knnen damit
  sogar lange Dateinamen erhalten, jedoch keine Rechte. Man benutze
  diese Kommandos einfach wie die DOS-Kommandos.

  Was fr Disketten gilt, gilt natrlich auch fr andere Arten von
  Laufwerken, wie z.B. Zip-Disks, CD-ROM's, neue Festplatten usw. Fr
  Zip-Laufwerke gibt es brigens ein eigenes HOWTO, das  ZIP Drive mini-
  HOWTO , bzw.  eine deutsche Version als Deutsches ZIP-HOWTO. Hier das
  Verfahren zum mounten eines CD-ROM:

       # mount -t iso9660 /dev/cdrom /mnt





  Das ist der "offizielle" Weg einen Datentrger ins Dateisystem des
  Rechners einzubinden (zu mounten). Da es jedoch etwas lstig ist,
  jedesmal zum mounten root sein zu mssen, gibt es eine "Abkrzung",
  die es jedem Nutzer erlaubt, die Datentrger einzubinden und der
  auerdem Schreibarbeit spart:

  Als root legt man zuerst die Verzeichnisse /mnt/a, /mnt/a:, und
  /mnt/cdrom an.

  Danach fgt man in /etc/fstab die folgenden Zeilen hinzu:


       /dev/cdrom      /mnt/cdrom  iso9660 ro,user,noauto          0       0
       /dev/fd0H1440   /mnt/a:     msdos   user,noauto,umask=000   0       0
       /dev/fd0H1440   /mnt/a      minix   user,noauto             0       0




  Um jetzt eine DOS-Diskette, eine Minix-Diskette und ein CDROM zu
  mounten, reicht nun folgendes:



       $ mount /mnt/a:
       $ mount /mnt/a
       $ mount /mnt/cdrom




  Auf /mnt/a, /mnt/a:, und /mnt/cdrom kann jetzt von jedem Nutzer
  zugegriffen werden. Man sollte beachten, da man fr ein frisch
  angelegtes Minix oder ext2 Filesystem auf der Diskette erst die
  entsprechenden Rechte vergeben mu, damit alle Nutzer darauf schreiben
  knnen:



       # mount /mnt/a
       # chmod 777 /mnt/a
       # umount /mnt/a




  Man sollte sich natrlich im Klaren darber sein, da dies ein dickes
  Sicherheitsloch ist. Wenn Sicherheit also von Bedeutung ist, z.B. in
  einer Firma, sollte man etwas vorsichtiger sein.


  4.2.  Das Backup


  Jetzt, wo Sie wissen wie man mit Floppies umgeht, noch ein paar Zeilen
  zum Anlegen eines Backup. Es gibt verschiedene Pakete, die einem dabei
  helfen sollen, aber als einfachste Methode fr ein Backup auf mehreren
  Medien gibt es:


       # tar -M -cvf /dev/fd0H1440 /zu_sicherndes_Verzeichnis




  Hierzu sind i.allg. root-Rechte ntig. Man braucht eine formatierte
  Diskette im Laufwerk sowie ausreichend weitere vorrtig. Um die Daten
  wiederherzustellen, legt man die erste Diskette ins Laufwerk und gibt
  ein:



       # tar -M -xpvf /dev/fd0H1440





  5.  Und was ist mit Windows?


  Das quivalent zu Windows im gewissen Sinne ist unter Linux das
  Grafiksystem X11. Im Gegensatz zu Windows oder dem Mac wurde X11 nie
  unter dem Gesichtspunkt der Benutzerfreundlichkeit oder des Aussehens
  entwickelt, sondern nur zur Bereitstellung grundlegender
  Grafikfhigkeiten fr UNIX-Workstations. Hier ein paar der
  hauptschlichen Unterschiede:

  Whrend Windows berall auf der Welt gleich aussieht, ist das bei X11
  nicht so: es ist in wesentlich weiterem Rahmen konfigurierbar. Das
  jeweilige Aussehen von X11 wird zum groen Teil vom sogenannten
  Windowmanager bestimmt. Seine Aufgabe ist es, die Fenster auf dem
  Bildschirm zu verwalten. Es gibt mehrere, aus denen man auswhlen
  kann: Die am weitesten verbreiteten sind der fvwm, ein einfacher aber
  speichereffizienter Windowmanager, der fvwm2, der Nachfolger des fvwm,
  der fvwm95, der dem Desktop etwas Windows95-Flair verleiht, sowie
  viele andere. Einige davon sehen ausgesprochen schn aus.

  Der Windowmanager kann auf vielerlei Weise konfiguriert werden: er
  kann wie unter Windows agieren, indem er ein Fenster in den
  Vordergrund bringt, das explizit angeklickt wurde. Alternativ kann er
  aber ein Fenster auch in den Vordergrund bringen, wenn sich nur die
  Maus einfach darber befindet.  Dieses und viele andere Dinge knnen
  durch das Editieren einer oder mehrerer Konfigurationsdateien
  verndert werden. Dazu lese man die entsprechenden Dateien der
  Dokumentation.

  X11-Programme werden mit Hilfe spezieller Bibliotheken geschrieben,
  den Widgetbibliotheken. Diese Bibliotheken enthalten vorgefertigte
  Elemente wie Eingabefelder fr Text, Listenfelder, Knpfe usw. Da es
  davon im Gegensatz zu Windows mehrere gibt, sehen die Programme unter
  Linux teilweise unterschiedlich aus. Die Einfachsten sind die, die die
  Athenawidgets benutzen (2D-look, xdvi, xman, xcalc); andere nutzen
  Motif (netscape), wieder andere Tcl/Tk, XForms, Qt und was es noch so
  gibt.  Einige dieser Bibliotheken besitzen ein Windows-hnliches
  aussehen.

  Soweit zum Aussehen von X11, aber was ist mit der Bedienung?
  nglcklicherweise verhalten sich auch hier viele Programme
  unterschiedlich. Wenn man zum Beispiel eine Textzeile mit der Maus
  markiert und dann BACKSPACE drckt, erwartet man, da die Zeile
  verschwindet. Dieses funktioniert aber nicht bei den Applikationen,
  die auf den Athenawidgets basieren, dagegen funktioniert es mit
  Programmen die auf Motif, Qt, und  Tcl/Tk basieren.


  Scrollbars (deutsch "Rollbalken"), Grennderungen und das Minimieren
  zu einem Icon hngen ebenfalls vom Windowmanager und dem Widgetsatz
  ab. Es wre zuviel hier alles aufzulisten, daher nur ein paar Punkte.
  Bei den Programmen mit den Athenawidgets ist es am besten, den
  Scrollbar mit der mittleren Maustaste zu bedienen. Wenn man keine
  solche hat, kann man die zwei Mausbuttons gleichzeitig drcken.

  Programme haben per Default kein eigenes Icon, man kann ihnen jedoch
  mehrere zuweisen. Das Ob und Wie hngt vom jeweiligen Windowmanager
  ab. Der Bildschirm selber heit Rootwindow, und sein Aussehen kann man
  mit Programmen wie xsetroot oder xloadimage verndern.

  Die Zwischenablage kann nur Text enthalten und verhlt sich anders als
  in Windows. Wenn ein Text markiert wurde wird er auch sofort
  automatisch in die Zwischenablage kopiert. Wenn man jetzt den Cursor
  woanders hinbewegt und die mittlere Maustaste klickt, wird der Text
  aus der Zwischenablage dort eingefgt. Es gibt ein Programm,
  xclipboard, das mehrere Zwischenablagen zur Verfgung stellt.

  Drag und Drop ist nur vorhanden, wenn die X-Windowsprogramme dieses
  untersttzen.

  Um Speicher zu sparen ist es besser, nur Programme zu verwenden, die
  die gleichen Bibliotheken verwenden. Dies ist in der Praxis jedoch
  nicht immer mglich. Es gibt ein Projekt namens K Desktop Environment,
  dessen Ziel es ist, X-Windows hnlich wie Windows ein einheitliches
  Aussehen und Bedienung zu verpassen. Es ist derzeit im Betastadium,
  aber bereits recht eindrucksvoll. Wenn es fertig ist, knnte es
  Windows ziemlich alt aussehen lassen. Unter http://www.kde.org findet
  man im Internet mehr darber.


  6.  Einrichten des Systems




  6.1.  Der Systemstart


  Zwei wichtige Dateien unter DOS sind AUTOEXEC.BAT und CONFIG.SYS,
  welche beim Booten zur Initialisierung des Systems, zum Setzen von
  Umgebungsvariablen wie PATH oder FILES und zum Starten von Treibern
  und Programmen verwendet werden. Unter Linux gibt es mehrere Dateien
  fr das Starten des Systems, wobei man eine Reihe von ihnen besser
  unangetastet lt, bis man genau wei, was man tut. Hier aber trotzdem
  eine Liste der wichtigsten Dateien:




       Dateien                             Bemerkungen

       /etc/inittab                        Hnde weg frs erste!
       /etc/rc.d/* bzw. /sbin/int.d/*      dito




  Falls man nur die PATH-Variable oder eine andere Umgebungsvariable
  setzen mchte, die Login-Meldung ndern oder automatisch nach dem
  Login ein Programm starten mchte, kann man dieses in den folgenden
  Dateien tun:



  Dateien                         Bemerkungen

  /etc/issue                      setzt pre-login Meldung
  /etc/motd                       setzt post-login Meldung
  /etc/profile                    setzt u.a. PATH und andere Variablen
  /etc/bashrc                     setzt u.a. Aliase und Funktionen(s.u.)
  /ihr_home_Verz/.bashrc          setzt Ihre Aliase und Funktionen
  /ihr_home_Verz/.bash_profile    setzt Umgebung + startet Ihre Programme
  /ihr_home_Verz/.profile         dito




  Wenn letztere Datei existiert (man beachte, da sie eine versteckte
  Datei ist), wird sie nach dem Login gelesen und die Anweisungen darin
  ausgefhrt.

  Beispiel eines .profile:



       # Ich bin ein Kommentar
       echo Umgebung:
       printenv | less   # entspricht Kommando SET unter DOS
       alias d='ls -l'   # d bedeutet ab jetzt ls -l
       alias up='cd ..'
       echo "Der Pfad ist jetzt "$PATH
       echo "Heutiges Datum: `date`"  # Ausgabe des Kommandos 'date' verwenden
       echo "Schnen Tag noch, "$LOGNAME
       # Das Folgenden ist eine "Shell-Funktion"
       ctgz() # Auflisten des Inhalts eines .tar.gz Archives.
       {
         for file in $*
         do
           gzip -dc ${file} | tar tf -
         done
       }
       # Ende des .profile




  $PATH und $LOGNAME sind Umgebungsvariablen; es gibt noch viele andere,
  mit denen man experimentieren kann. Hier gilt wieder MSL, z.B. fr das
  Programm less und bash.


  6.2.  Dateien zur Programm-Initialisierung


  Unter Linux kann fast alles den eigenen Bedrfnissen angepat werden.
  Die meisten Programme haben ein oder mehrere Initialisierungsdateien,
  an denen man herumbasteln kann, oft mit dem Namen .Programmnamerc in
  Ihrem Home-Verzeichnis. Die ersten, an denen man blicherweise etwas
  verndert sind:


     .inputrc
        benutzt von bash, um Tastenzuordnungen festzulegen.


     .xinitrc
        benutzt von startx, um das X Windows System zu initialisieren.



     .fvwmrc
        benutzt vom Windowmanager fvwm. Ein Beispiel ist in:
        /usr/lib/X11/fvwm/system.fvwmrc


     .Xdefault
        benutzt z.B. von rxvt, einem Terminalemulator fr X und anderen
        Programmen.

  Mit den meisten bekommt man es frher oder spter zu tun, also auch
  hier wieder MSL.


  7.  Ein wenig Programmierung



  7.1.  Shell-Skripte: viel mehr als .BAT Dateien


  Falls Sie .BAT Dateien bisher benutzt haben, um lange Kommandoeingaben
  abzukrzen (wie ich zum Beispiel), kann dies jetzt besser durch das
  Einfgen von Alias-Anweisungen (siehe obiges Beispiel) in die Dateien
  profile oder .profile geschehen. Wenn Ihre .BAT Dateien jedoch
  komplizierter sind, werden Sie die Skriptsprache, die von der Shell
  bereitgestellt wird, mgen: Sie ist so mchtig wie QBasic - wenn nicht
  noch mchtiger. Sie hat Variablen, Strukturen wie while, for, case,
  if...  then... else, und vieles anderes. Sie ist eine gute Alternative
  zu einer "echten" Programmiersprache.

  Um ein Skript, das Gegenstck zu einer .BAT Datei unter DOS, zu
  schreiben, mu man lediglich eine ganz gewhnliche ASCII-Datei
  erstellen, die die gewnschten Befehle enthlt, diese speichern und
  mit dem Kommando chmod +x <skripdatei> ausfhrbar machen. Man kann es
  dann wie jedes andere Programm aufrufen.

  Ein Hinweis: Der Systemeditor ist der vi, und nach meiner Erfahrung
  sind neue Nutzer selten davon erbaut, da sie ihn als schwer zu
  bedienen empfinden. Ich werde ihn hier nicht weiter erlutern, da ich
  ihn nicht mag und auch nicht benutze. Weitere Erluterungen findet man
  dazu in Matt Welsh's Linux installation... (englisch) oder jedem
  anderen Buch ber Linux/UNIX. Es ist vielleicht sinnvoll, sich einen
  anderen Editor zu besorgen bzw. zu installieren, z.B. joe oder emacs
  fr X. Zum vi nur soviel:


    zum Text einfgen nach dem Start: 'i' eingeben, dann den Text;

    verlassen des vi ohne sichern, <ESC> eingeben, dann ':q!'

    verlassen und sichern, <ESC> eingeben, dann ':wq'

    zum weitereditieren nach einem <ESC> wieder 'i'

    zwischenspeichern, <ESC> eingeben, dann ':w'

  Skripte fr die bash zu schreiben ist ein weites Feld, und ich will
  hier nicht weiter darauf eingehen. Hier nur ein Beispiel eines Shell-
  Skriptes, aus dem man einige grundlegende Dinge erkennen kann:







  #!/bin/sh
  # beispiel.sh
  # Ich bin ein Kommentar
  # die erste Zeile nicht ndern, sie mu genau so dastehen
  echo "Dieses System ist: `uname -a`" # Nutzung der Ausgabe des Kommandos
  echo "Mein Name ist $0" # vordefinierte Variablen
  echo "Es wurden die folgenden $# Parameter bergeben: "$*
  echo "Erster Parameter ist: "$1
  echo -n "Ihr Name? " ; read ihr_name
  echo Unterschied beachten: "hi $ihr_name" # einklammern mit "
  echo Unterschied beachten: 'hi $ihr_name' # einklammern mit '
  DIRS=0 ; FILES=0
  for file in `ls .` ; do
    if [ -d ${file} ] ; then # falls file ein Verzeichnis
      DIRS=`expr $DIRS + 1`  # DIRS = DIRS + 1
    elif [ -f ${file} ] ; then
      FILES=`expr $FILES + 1`
    fi
    case ${file} in
      *.gif|*jpg) echo "${file}: Bildateien" ;;
      *.txt|*.tex) echo "${file}: Textdateien" ;;
      *.c|*.f|*.for) echo "${file}: Quelldateien" ;;
      *) echo "${file}: allgemeine Dateien" ;;
    esac
  done
  echo "es gibt ${DIRS} Verzeichnisse und ${FILES} Dateien"
  ls | grep "ZxY--!!!WKW"
  if [ $? != 0 ] ; then # Rckgabewert des letzten Kommandos
    echo "ZxY--!!!WKW nicht gefunden"
  fi
  echo "genug... 'man bash' eingeben fr weitere Informationen."





  7.2.  Kurzer Blick auf C


  Unter UNIX ist die Programmiersprache des Systems C, ob es einem
  gefllt oder nicht. Zur Programmierung von Programmen gibt es jedoch
  auch eine groe Anzahl anderer Sprachen, z.B. FORTRAN, Pascal, Lisp,
  Basic, Perl, awk uva. .

  Hier sind ein paar Hilfestellungen fr die, die C bereits beherrschen
  und von Programmen wie Turbo C++ o.. verwhnt wurden. Der C-Kompiler
  unter Linux heit gcc und hat keinerlei der netten Features, wie sie
  unter DOS und Windows blich sind: keine IDE, keine Online-Hilfe, kein
  integrierter Debugger usw. Es ist nur ein reiner
  Kommandozeilenkompiler der jedoch sehr leistungsfhig und effizient
  ist. Da er auch auf vielen anderen Unixsystemen verfgbar ist,
  arbeiten viele Leute lieber mit ihm, als mit dem zu ihrem System
  standardmig ausgelieferten Kompiler.  Um sein Standardprogramm
  hello.c zu kompilieren, gibt man ein:



       $ gcc hello.c




  Das ergibt eine ausfhrbare Datei namens a.out. Um dieser Datei gleich
  einen anderen Namen geben zu lassen (z.B. hallo) gibt man ein


  $ gcc -o hallo hello.c




  Um eine Bibliothek an ein Programm zu linken, fgt man den Parameter
  -l<libname> hinzu. Zum Linken der Mathebibliothek zum Beispiel:



       $ gcc -o mattteprog matteprog.c -lm




  (Der -l<libname> Parameter veranlat gcc die Bibliothek
  /usr/lib/lib<libname>.a zu linken; also linkt -lm /usr/lib/libm.a).

  So weit so gut. Wenn das Programm jedoch aus mehreren Quelldateien
  besteht, wird der Einsatz des Hilfsprogrammes make sinnvoll.
  Angenommen man hat einen Parser fr Ausdrcke geschrieben: die
  Quelldatei ist parser.c und beinhaltet per #include zwei
  Headerdateien, parser.h und xy.h. Jetzt will man die Routinen aus
  parser.c in einem Programm, sagen wir calc.c, verwenden, welches
  seinerseits per #include parser.h enthlt. Ein ziemliches
  Durcheinander! Was mu man machen, um calc.c zu kompilieren?

  In diesem Falle schreibt man ein sogenanntes makefile, welches dem
  Kompiler Auskunft ber die Abhngigkeiten zwischen den Quell- und
  Objektdateien gibt. In unserem Falle:




       # Dies ist ein makefile zum kompilieren von calc.c
       # <TAB> muss durch das Tabulator-Zeichen ersetzt werden!

       calc: calc.o parser.o
       <TAB>gcc -o calc calc.o parser.o -lm
       # calc basiert auf zwei Objektdateien: calc.o und parser.o

       calc.o: calc.c parser.h
       <TAB>gcc -c calc.c
       # calc.o basiert auf zwei Quelldateien

       parser.o:  parser.c parser.h xy.h
       <TAB>gcc -c parser.c
       # parser.o basiert auf drei Quelldateien

       # ende des makefile.




  Abspeichern als Datei makefile und eingeben



       $ make




  um das Programm zu kompilieren, oder als calc.mak speichern und
  eingeben

       $ make -f calc.mak




  make sucht automatisch (wenn kein anderer Name per Option -f angegeben
  wird) nach einer Datei namens Makefile oder makefile im aktuellen
  Verzeichnis als Datei mit den Abhngigkeiten. Auch hier wieder MSL.

  Man kann sich bezglich der C-Funktionen Hilfe anzeigen lassen. Sie
  sind im Manual, Abschnitt 3 beschrieben. Beispiel:



       $ man 3 printf




  Darber hinaus gibt es noch viele weitere Bibliotheken, die das
  Programmieren erleichtern. Darunter sind z.B. ncurses, mit der man
  Textmodus-Programme erstellen kann, svgalib um Grafik auch ohne X-
  Windows zu verwenden, sowie viele andere. Wer noch einen Schritt
  weitergehen mchte, kann sich an die Programmierung von X-Windows
  heranwagen. Auch dafr gibt es viele Bibliotheken, die die
  Programmierung unter X vereinfachen, wie z.B.:



     XForms

          einstein.phys.uwm.edu/pub/xforms




     MGUI

          www.volftp.vol.it/IT/IT/ITALIANI/MORELLO/index.htm



     LessTif
         www.hungry.com: Eine Bibliothek, die als freier Ersatz des
        kommerziellen Motif gedacht ist, welches die Standardbibliothek
        fr grafische Programmierung unter UNIX ist. LessTif ist zum
        jetzigen Zeitpunkt (Oktober 1997) noch nicht ganz fertig, aber
        trotzdem schon weitgehend benutzbar.


     Qt www.troll.no: Auf dieser Bibliothek basiert der KDE, oben
        erwhnter Desktop, der alle Chancen hat, der Standard unter
        Linux zu werden.



  Mehr Informationen ber Bibliotheken und Programmiertools im
  allgemeinen gibt es unter:

       http://www.xnet.com/~blatura/linapp6.html


  Es gibt viele Editoren, die wie eine IDE arbeiten knnen: emacs und
  jed zum Beispiel haben auch Syntax Highlighting, automatische
  Einrckung und so weiter.

  Wenn man unbedingt eine IDE wie unter den Borlandprodukten haben will,
  kann man sich z.B. die Pakete rhide von

       metalab.unc.edu:/pub/Linux/devel/debuggers/

  oder xwpe von

       metalab.unc.edu:/pub/Linux/apps/editors/

  anschauen. Es wird Ihnen wahrscheinlich gefallen.


  8.  Das verbleibende 1%



  8.1.  Virtuellen Speicher anlegen


  Obwohl Linux bereits mit 2 MByte RAM laufen kann, gilt hier auch das,
  was fr alle anderen Betriebsysteme gilt: RAM ist durch nichts zu
  ersetzen, auer durch mehr RAM. Hier ein paar Richtlinien fr den RAM-
  Ausbau in der Praxis:

    ohne X-Windows minimal 4 MByte empfohlen, besser 8 MByte;

    mit X-Windows minimal 8 MByte empfohlen, besser 16 MByte.

     Natrlich hngt die Gre des RAM's auch von den verwendeten
     Programmen ab. Zustzlich kann man, analog zu Windows, sich noch
     virtuellen RAM auf der Festplatte anlegen, auch Swap-Space genannt.
     Um sich 8 MByte Swap-Space anzulegen gibt man als root ein:



       # dd if=/dev/zero of=/swapfile bs=1024 count=8192
       # mkswap /swapfile 8192
       # sync
       # swapon /swapfile




  Entweder wird dann die letzte Zeile in /etc/rc.d/rc.local (oder
  /sbin/rc.d/rc.local, je nach dem wo rc.local ist) eingefgt, um das
  Swapfile beim Systemstart automatisch verfgbar zu machen, oder man
  fgt folgende Zeile in /etc/fstab hinzu:



       /swapfile   swap   swap   defaults




  Eine weitere und im allgemeinen effizientere Mglichkeit ist das
  Einrichten einer eigenen Swap-Partition. Hierzu legt man sich erst
  ganz normal eine neue leere Partition auf der Festplatte mit fdisk an
  (z.B. 30 Mb), gibt ihr den Partitionstyp 83, bereitet dann die
  Partition vor mit:



       # mkswap -c /dev/mein_swap_device


  und fgt zu guter letzt in die /etc/fstab ein:



       /dev/mein_swap_device   swap   swap   defaults




  Beim nchsten Sytemstart ist die neue Swap-Partition dann verfgbar.


  8.2.  Arbeiten mit tar & gzip


  Unter UNIX gibt es einige weit verbreitete Programme zum Archivieren
  und Komprimieren von Dateien. Um Archive anzulegen wird tar benutzt,
  hnlich dem PKZIP, aber ohne Kompression. Um ein neues Archiv
  anzulegen:



       $ tar -cvf <archiv_name.tar> <Datei> [Datei...]




  Um eine Datei aus einem Archiv zu extrahieren:



       $ tar -xpvf <archiv_name.tar> [Datei...]




  Zum Auflisten des Inhaltes eines Archives:



       $ tar -tf <archiv_name.tar> | less




  Man kann Dateien (und damit auch tar-Archive) mit compress
  komprimieren. Es ist jedoch eigentlich veraltet und sollte daher nur
  noch in Ausnahmefllen verwandt werden. Das gebruchlichere Programm
  ist gzip. Aufruf:



       $ compress <Datei>
       $ gzip <Datei>




  Das erzeugt eine Datei mit der Endung .Z (compress) oder .gz (gzip).
  Diese Programme knnen nur jeweils eine Datei gleichzeitig
  komprimieren. Zum entkomprimieren:





  $ compress -d <Datei.Z>
  $ gzip -d <Datei.gz>




  MSL.

  Die Programme unarj, zip und unzip (PK??ZIP kompatibel) existieren
  ebenfalls. Dateien mit der Endung .tar.gz oder .tgz (archiviert mit
  tar, dann komprimiert mit gzip) sind in der Unixwelt so verbreitet wie
  .ZIP Dateien unter DOS. So listet man den Inhalt eines .tar.gz Archivs
  auf:



       $ gzip -dc <Datei.tar.gz> | tar tf - | less





  8.3.  Programme installieren


  Zunchst erst einmal ist das Installieren von Programmen die Aufgabe
  von root. Einige Linuxprogramme sind als speziell vorbereitete .tar.gz
  oder .tgz Archive verfgbar. Diese kann man vom Verzeichnis / aus
  entpacken durch ein



       # gzip -dc <Datei.tar.gz> | tar xvf -




  oder auch (bewirkt das gleiche)



       $ tar -zxf <file.tar.gz>




  Die Dateien werden dann automatisch in den richtigen Verzeichnissen
  entpackt, die (wenn notwendig) gleich miterzeugt werden.
  Slackwarenutzer haben hier ein Hilfsprogramm namens pkgtool. Ein
  anderes mit hnlichem Zweck ist rpm, welches dank Red Hat ebenfalls
  frei verfgbar ist. Archive fr den rpm erkennt man an der Endung
  .rpm. Fr ihn gibt es ein eigenes HOWTO, das RPM HOWTO, oder in der
  deutschen Version als Deutsches RPM-HOWTO.

  Andere Archive sollten nicht von / aus installiert werden. Solch ein
  Archiv enthlt blicherweise ein Hauptverzeichnis paketname/ und
  weitere Dateien und Unterverzeichnisse unter diesem. Nach dem Linux-
  Filesystemstandard sollten diese unter /usr/local installiert werden,
  wer eigenbrdlerisch veranlagt ist, kann sie aber auch gerne irgendwo
  anders installieren. Darber hinaus werden viele Pakete auch als C-
  oder C++ - Quelldateien geliefert, die man erst bersetzen mu, um ein
  ausfhrbares Programm zu erhalten. In den meisten Fllen gengt (nach
  dem lesen der README- und/oder INSTALL-Datei des Paketes) ein make im
  Hauptverzeichnis. Natrlich sollte man dafr den gcc oder g++
  Kompiler installiert haben.

  8.4.  Ntzliche Tips


  Kommandovervollstndigung: drcken der <TAB> Taste whrend der Eingabe
  eines Befehls auf der Kommandozeile vervollstndigt den angefangenen
  Befehl. Beispiel: Man will die Zeile gcc
  dies_ist_ein_sehr_langer_Name.c eingeben. Eintippen von gcc die<TAB>
  veranlat die Shell, automatisch den langen Dateinamen zu ergnzen,
  falls die angegebenen Buchstaben ausreichen, um die Datei eindeutig zu
  identifizieren.

  Zurckscrollen: drcken von SHIFT + Bild hoch (Page up) ermglicht es,
  ein paar Seiten des Bildschirminhaltes zurckzuholen, je nachdem
  wieviel Videospeicher man hat.

  Reset fr den Bildschirm: Wenn man mit more oder cat eine Binrdatei
  auf den Bildschirm ausgegeben hat, kann es passieren, da der
  Bildschirm danach vllig unlesbar wird. Um das wieder geradezubiegen,
  gibt man blind ein reset ein oder diese Folge von Zeichen: echo CTRL-V
  ESC c RETURN.

  Text einfgen: auf der Konsole siehe unten; unter X klickt man in das
  (z.B. xterm) Fenster und zieht die Maus bei gedrckter linker
  Maustaste ber den Text. Dann in dem Fenster, wo der Text hin soll,
  die mittlere Maustaste drcken, oder wenn man eine Zweitastenmaus hat,
  beide Tasten gleichzeitig. Es gibt auch das xclipboard (leider nur fr
  Text) als Alternative.

  Maus nutzen: Zunchst mu man den gpm installieren, einen Maustreiber
  fr die Konsole. Text selektieren wie unter X und dann die rechte
  Maustaste zum Einfgen drcken (oder auch die mittlere). Dieser
  Mechanismus funktioniert ber mehrere virtuelle Terminals hinweg.

  Kernelmeldungen: man kann als root in /var/adm/messages oder
  /var/log/messages nachschauen, was der Kernel so an Meldungen
  produziert. Hier stehen auch die Meldungen vom Booten des Systems. Das
  Kommando dmesg ist hier auch hilfreich.


  8.5.  Ntzliche Programme und Kommandos


  Diese Liste ist natrlich nur eine persnliche und richtet sich nach
  meinen Bedrfnissen und Vorstellungen. Zunchst einmal, wo man sie
  finden kann: Da sich sicher alle auskennen mit dem Internet und Dinge
  wie archie und ftp beherrschen, hier nur die drei wichtigsten Adressen
  fr Linux:  metalab.unc.edu, tsx-11.mit.edu, und nic.funet.fi. Man
  benutze soweit mglich den nchstgelegenen Mirror.



     at erlaubt das automatische Ausfhren von Programmen zu bestimmten
        Zeiten;


     awk
        ist eine einfache und mchtige Sprache zum Bearbeiten von
        Datenfiles (und nicht nur). Wenn z.B. data.dat das Datenfile mit
        mehreren Feldern pro Zeile ist, dann gibt



          $ awk '$2 ~ "abc" {print $1, "\t", $4}' data.dat



     das 1. und 4. Feld jeder Zeile von data.dat aus, die abc enthlt.


     cron
        ist ein ntzliches Programm, welches zum periodischen Ausfhren
        von Kommandos zu einem bestimmten Datum und einer Zeit dient;


     delete-undelete
        wie der Name schon sagt;


     df gibt Informationen ber die gemounteten Disks (freier Platz,
        usw.);


     dosemu
        ermglicht das Abarbeiten einer ganzen Reihe von DOS-Programmen;
        mit etwas Herumbasteln bekommt man sogar Windows 3.x zu laufen,
        allerdings sollte man dann davon nicht zuviel erwarten;



     file <Dateiname>
        gibt darber Auskunft, was Dateiname fr ein Typ ist (ASCII-
        Text, ausfhrbar, Archiv, etc.);


     find
        (siehe auch Kapitel ``bertragen von Kommandos von DOS nach
        Linux'') ist eines der mchtigsten und ntzlichsten Kommandos.
        Es wird dazu benutzt, Dateien zu finden, die gewissen
        Bedingungen entsprechen und auf diese dann bestimmte Kommandos
        anzuwenden.  Allgemeine Form des Kommandos find :



          $ find <Verzeichnis> <Ausdruck>




     wobei <Ausdruck> die Suchkriterien und Kommandos enthlt.
     Beispiele:



          $ find . -type l -exec ls -l {} \;




     sucht alle Dateien, die symbolische Links sind und gibt aus, auf
     was sie ein Link sind.



          $ find / -name "*.old" -ok rm {} \;




     sucht alle Dateien, die auf .old enden und lscht diese nach
     vorheriger Rckfrage.


     $ find . -perm +111




     sucht alle Dateien, deren Rechte 111 sind (ausfhrbar).



          $ find . -user root




     sucht alle Dateien, die root gehren. Es gibt noch viele weitere
     Mglichkeiten, also wieder MSL.


     gnuplot
        hervorragendes Programm fr wissenschaftliche Zeichnungen;


     grep
        sucht Textmuster in Dateien. z.B.:


          $ grep -l "Geologie" *.tex




     listet alle Dateien *.tex, die das Wort Geologie enthalten. Das
     Programm zgrep arbeitet mit gezippten Dateien. MSL.


     tcx
        komprimiert ausfhrbare Dateien und belt sie ausfhrbar;


     joe
        guter Editor. Wenn man ihn mit jstar aufruft kennt er die selben
        Tastaturkombinationen wie WordStar et al., einschlielich DOS
        und Borlands Turbo-Editoren;


     less
        wahrscheinlich der beste Textbrowser; wenn korrekt konfiguriert,
        kann man damit auch gzip-, tar- und zip-Dateien anzeigen;


     lpr
        <Datei> druckt eine Datei im Hintergrund aus. Zum Abfragen des
        Status des Druckauftrages gibt es lpq; um eine Datei aus der
        Warteschlange des Druckers zu entfernen, gibt es lprm;


     mc guter Dateimanager (hnlich Norton Commander);


     pine
        gutes E-Mail Programm;


     script <script_datei>
        kopiert, was auf dem Bildschirm erscheint, nach script_file, bis
        man das Kommando exit gibt.  Ntzlich zur Fehlersuche;
     sudo
        erlaubt normalen Nutzern, bestimmte Aufgaben von root zu
        erledigen (z.B. Disketten formatieren und mounten; MSL);


     uname -a
        gibt Informationen ber das eigene System aus;


     zcat
        und zless sind ntzlich, um gezippte Textdateien anzuschauen,
        ohne sie erst zu entpacken. Mgliche Verwendungen:



          $ zless textfile.gz
          $ zcat textfile.gz | lpr





     weitere:
        Die folgenden Kommandos sind gelegentlich recht ntzlich: bc,
        cal, chsh, cmp,  cut, fmt, head, hexdump, nl, passwd, printf,
        sort, split, strings, tac,  tail, tee, touch, uniq, w, wall, wc,
        whereis, write, xargs, znew. MSL.



  8.6.  Gebruchliche Erweiterungen und zugehrige Programme



  Man begegnet unter Linux vielen Arten von Dateierweiterungen. Unter
  Weglassung der ausgefalleneren Varianten (z.B. Fonts u.a.) hier eine
  Liste, was was ist:


     .1 ... .8
        Manualseiten. Benutzt von man.


     .arj
        Archiv angelegt von arj. unarj zum entpacken.


     .dvi
        Ausgabedateien von TeX (siehe unten). xdvi zum Anschauen; dvips
        zum Umwandeln in eine Postscript .ps Datei.


     .gif
        Bilddatei. Prgramme: seejpeg, xpaint, xv, xli, gimp, ... .


     .gz
        mit gzip komprimierte Datei.


     .info
        info Datei (eine Art Alternative zu Manualseiten).  Programm:
        info.



     .jpg, .jpeg
        Bilddatei. Programme siehe .gif.


     .lsm
        Linux Software Map Datei. Einfache ASCII Datei, die die
        Beschreibung eines Paketes enthlt.


     .ps
        Postscriptdatei. Zum Anschauen und Drucken gs und evtl.
        ghostview.


     .rpm
        Red Hat Paket. Kann mittels des Paketmanagers rpm installiert
        werden


     .tgz, .tar.gz
        Archive angelegt mit tar und komprimiert mit gzip.


     .tex
        Textdatei, die an TeX bergeben wird, ein sehr mchtiges Text-
        Satzprogramm. Dazu bentigt man das Paket tex, das in den
        meisten Distributionen enthalten ist. Man hte sich jedoch vor
        NTeX, das Fonts zerstrt hat und Teil einiger Slackwareversionen
        war.


     .texi
        Texinfodatei, kann als Quelle fr TeX und info Dateien dienen
        (siehe .info). Programm: texinfo.


     .xbm, .xpm, .xwd
        Bilddatei. Programm: xpaint.


     .Z Datei komprimiert mit compress.


     .zip
        Archiv angelegt mit zip. Programme: zip und unzip.



  9.  Das Ende, frs Erste


  Glckwunsch! Sie haben jetzt UNIX ein bichen kennengelernt und sind
  bereit zu beginnen, damit zu arbeiten. Vergessen Sie jedoch nicht, da
  Sie immer noch nicht alles wissen und noch eine gute Portion Praxis
  brauchen werden, um Linux richtig ausschpfen zu knnen. Wenn es aber
  darum ging, sich ein paar Programme zu besorgen und anzufangen, mit
  ihnen zu arbeiten, dann sollte das hier schon reichen.

  Ich bin sicher, da Sie Linux mgen werden und immer mehr darber
  lernen werden - so wie alle anderen. Ich bin mir auch ziemlich sicher,
  da Sie nicht mehr zu DOS zurckkehren werden. Hoffentlich war alles
  einigermaen verstndlich und hat meinen 3 oder 4 Lesern geholfen.




  9.1.  Copyright


  Falls nicht anders vermerkt, unterliegen Linux HOWTO's dem Copyright
  ihrer Autoren. Linux HOWTO's drfen teilweise oder im Ganzen
  vervielfltigt und vertrieben werden, mittels jedweden Mediums, ob
  physisch oder elektronisch, so lange wie diese Copyrightnotiz in allen
  Exemplaren enthalten ist.  Kommerzielle Distribution ist erlaubt und
  erwnscht; der Autor (der englischen Originalversion) wrde jedoch
  gern davon in Kenntnis gesetzt werden.

  Alle bersetzungen, abgeleitete Werke sowie zusammenfassende Arbeiten
  die ein Linux HOWTO enthalten, mssen diesem Copyright unterliegen.
  D.h., es ist nicht gestattet, eine von einem HOWTO abgeleitete Arbeit
  zustzlichen Restriktionen zu unterwerfen. Ausnahmen knnen unter
  bestimmten Bedingungen gewhrt werden. Nheres ist dazu beim
  jeweiligen Koordinator der HOWTO's zu erfahren. Die Adressen sind
  weiter unten angegeben.

  Kurz gesagt, eine mglichst weite Verbreitung der HOWTO's ber viele
  Kanle ist von uns gewnscht, wir behalten uns jedoch das Copyright
  vor und mchten von Plnen zu weiteren Verteilung der HOWTO's in
  Kenntnis gesetzt werden.

  Falls Sie Fragen dazu haben, wenden Sie sich an den Koordinator der
  englischen HOWTO's Greg Hankins (gregh@sunsite.unc.edu), oder an den
  Koordinator der deutschen HOWTO's Marco Budde (Budde@tu-harburg.de).


  9.2.  Hinweis

  From DOS to Linux HOWTO wurde geschrieben von Guido Gonzato,
  guido@ibogfs.df.unibo.it. In dieser Version wurden zustzlich einige
  Korrekturen und Ergnzungen vom bersetzer vorgenommen, die in das
  englische Original als Version 1.3 rckbertragen wurden. Vielen Dank
  an Matt Welsh, den Autor von Linux Installation and Getting Started,
  an Ian  Jackson, den Autor von Linux frequently asked questions with
  answers, an Giuseppe Zanetti, den Autor von Linux, an alle die mir
  Vorschlge gesandt haben und natrlich an Linus Torvalds und GNU, die
  Linux geschaffen haben.

  Dieses Dokument wird so wie es ist zur Verfgung gestellt. Ich habe
  mir groe Mhe gegeben, soweit wie mglich alles korrekt darzustellen.
  Dennoch kann ich keinerlei irgendwie geartete Garantie bernehmen. Der
  Gebrauch der Informationen ist also auf eigenes Risiko, und ich
  bernehme in keiner Weise Verantwortung fr etwaige Schden, die aus
  der Anwendung dieser Informationen entstehen.

  Feedback ist willkommen. Fr Anregungen, Flames und Wnsche wende man
  sich an mich.

  Viel Spa mit Linux und dem Rest,

  Guido =8-)












