Band 1

X-ITEC PRESS Linux/FreeBSD Band 1

Fur wen ist dieses Buch?
̈ Dieses Buch ist fur alle, die ein bisschen etwas uber die Shell und dessen
̈ ̈ ̈ ̈ unglaubliche Moglichkeiten erfahren mochten. Jeder Administrator, Student und Programmierer aus dem IT Bereich wird sich damit auseinandersetzen. Eine ganz tolle Sache, Sie werden hier viele Infos aus der Praxis bekom- men.

Der klassische VI

Der VI ist fur mich einer der schrecklichsten und zugleich besten Editoren. ̈ Komisch oder? Wie dem auch sei. Ich benutze Ihn seit Jahren und verflu- ̈ ̈ che ihn seit Jahren. Mochten auch Sie Ihren Adrenalinspiegel auf die Hohe ̈ treiben? Nichts leichter als das! Benutzen Sie den VI einfach mal ofters,

̈

beispielsweise um vielleicht mal eine großere, umfangreiche Datei zu edi- tieren und testen Sie Ihren Aggressionspegel - ist sogar kostenlos! Wollten Sie nicht schon immer eine kostenlose Aggression? Nein? Ach, kann doch nicht sein. Zeigen Sie uns doch einmal, dass auch Sie zu etwas fahig sind und testen Sie Ihre Geduld. Ich habe Sie gewarnt - bzw. warnen Sie Ihre Kollegen, etwa in der Form: Achtung, ich benutze jetzt den VI! (Die Kolle- gen werden sich von Ihnen entfernen, wenn Sie wissen was VI bedeutet ̈ und Sie den ganzen Tag in Ruhe lassen! ̈

Ubrigends, das war KEIN Witz). ̈ Vielleicht konnte man die Arbeit mit dem VI als eine Art staatliches Anti- Aggressionsprogramm benutzen. Lassen Sie irgendwelche Leute mal ein Telefonbuch abtippen oder sowas, diese Menschen werden sich unglaub- lich aufregen und sind danach entweder reif fur die Klapse, oder aber sie ̈ ̈ sind vollig frei von jeder Art von Gewalt - solange Sie nicht irgendwo leise ̈ das Wortchen VI flustern...

̈ ̈

Starten konnen Sie den Editor durch die einfache Eingabe von vi. Wenn Sie ̈ den Editor verlassen mochten, geben Sie :q ein. Speichern :w. Speichern und beenden: :wq. Editiermodus mit i. Um den Editiermodus zu verlassen, verwenden Sie die Taste ESC. Um einen Text zu suchen, verlassen Sie den Editiermodus, anschliessend Slash (/) gefolgt von dem Suchbegriff, beispielsweise /console. Um zu einer bestimmten Zeile zu springen, geben Sie nach dem : einfach die Zeilennummer ein.

̈

Zum VIM: Der VIM ist eine ahnliche Version zum VI. Die wichtigste Funk- tion fur Einsteiger ist kopieren und einfugen von Text. Irgenwann werden ̈ ̈ Sie gezwungen sein - weil Sie nur unter dem VIM arbeiten und nicht mehr von Win aus auf Ihren Rechner zugreifen, Daten ohne Maus zu kopieren. Wissen Sie folgendes: mit y markiere ich einen Bereich, x=copy, c = cut und P steht fur paste. Dummerweise gibt es auch andere VI Clones, die ̈ das garnicht so sehen und diese Angelegenheiten ganz anders regeln. Es ̈ ist zum Mausemelken.

̈

Alles in allem: Samtliche VI Derivate, von A-Z fuhren langfristig zu einer ̈ ̈ massiven Depression (nicht wirtschaftlich, eher personlich in Kombination ̈ Manchmal ist man froh, dass man den mit einem bisschen Aggressivitat). VI benutzt, aber ich glaube man ist doch mehr sauer als glucklich. Su- ̈ chen Sie sich etwas anderes, irgendwann haben Sie echt keine Lust mehr ̈ auf diese teilweise wirklich subversiven Probleme, die standig und andau- ernd auftreten. Wann bin ich im Edit-Mode und wann nicht, warum kann ich schon wieder etwas nicht kopieren, usw... Sie werden das auch noch feststellen.


i insert Mode, Text vor der aktuellen Cursorposition einf ̈gen
                                                         u
a nach der Cursorposition Text einf ̈gen
                                     u
I am Start einer Zeile einf ̈gen
                            u
v visual mode
ESC command mode, R replace mode.
VIM:
v Bereich kopieren
 x ausschneiden
 c kopieren

 P einf ̈gen
        u
VI:
Y Zeile kopieren
P einf ̈gen
        u
D Zeile ab aktueller Position l ̈schen
                                   o
A Text am ENDE der Zeile einf ̈gen
                                u
I Text am ANFANG der Zeile einf ̈genu
dw ein Wort l ̈schen
               o
dd    aktuelle Zeile l ̈schen
                        o
dG    von hier bis zum Ende der Datei   l ̈schen
                                         o
d99G l ̈sche bis Zeile 99
       o
O  Anfang der Zeile
$  Ende der Zeile
b  ein Wort zur ̈cku
w  ein Wort vor
{  Absatz zur ̈ck
             u
}  Absatz vor
h, l, j, k links, rechts, oben unten
20G gehe nach Zeile 20
Am Befehlsprompt:
:/ nach Texten suchen
:s/suchtext/ersetztext/[optionen] wobei diese sind:
     g f ̈r global, i=case insensitive, c=R ̈ckfrage
        u                                 u
     Stichwort: regul ̈re Ausdr ̈cke
                     a        u
:r datei (einf ̈gen)
                u
:r! befehl (Ergebnis eines Befehls im Editor einf ̈gen!)
                                                   u
:!Befehl Befehl ausf ̈hren
                      u
:w speichern
:w!  ̈berschreiben
     u
:wq schreiben, Prog beenden
:q! sofort beenden egal was los ist
:set nu    Zeilennummerierung einschalten
Man kann auch eine Datenmenge an den Befehl weitergeben,
indem man diesen vorher mit v markiert!

Das reicht erstmal als Grundlage zum VI bzw VIM. Hier noch ein paar Tips zur Tastaturbelegung, falls Sie remote arbeiten und sich mal wieder wun- dern, warum dies und jenes nicht funktioniert. Sie arbeiten beispielsweise unter einem anderen OS und mappen dann die Zeichen auf den jeweiligen Zeichensatz. Das geht sehr gut mit diversen Terminal-Programmen, wie zum Beispiel Netterm fur Windows.

̈

  astatureinstellung: VT220
 ̈nderung: F5-Taste: ˆ[[15 ̃
A
F1-12:
ˆ[OP
ˆ[OQ
ˆ[OR
ˆ[OS
ˆ[[15 ̃
ˆ[[17 ̃
ˆ[[18 ̃
ˆ[[19 ̃
ˆ[[20 ̃
ˆ[[21 ̃
ˆ[[23 ̃
ˆ[[24 ̃
Bild-hoch:    ˆ[[5 ̃
Bild-runter: ˆ[[6 ̃

̈

Ich hatte mal das Problemchen, dass ich als Administrator standig irgend- welche VI Recoverymails bekam. Als Betreff unter der Bezeichnung Nvi saved the file ... wurde ich monatelang genervt. Irgendwo musste doch ̈ was zu finden sein, schließlich beschaftigte ich mich dann doch mal mit der ̈ man-page zum vi. Schon brav von oben nach unten durchlesen. Die Da- tei /etc/vi.exrc ist die globale Konfigurationsdatei und /var/tmp/vi.recover/ ist das Verzeichnis fur wiederherzustellende Dateien - aha!. Im Homever- ̈ zeichnis gibt es dann noch .nexrc fur eigene Einstellungen. In der Tat bin ̈ ich dann in diesem Verzeichnis fundig geworden und habe alles dort mal ̈ geloscht.

Da gibt es noch die Sache mit den Farben. Datei .vimrc set syntax off be- ̈ nutzen, wenn man keine Lust hat sich die Augen zu veratzen. Auch immer wieder ein Problem sind die Tabs, die zu Leerzeichen mutieren, was wir mittels

set tabstop=4 set shiftwidth=4 set noexpandtab verhindern werden.

Emacs

Einfuhrung

̈

Emacs ist ein Editor, dessen Bedienung die Grausamkeiten des VI noch ubertreffen. Zuerst mussen wir einige Einstellungen vornehmen, bevor es ̈ ̈ uberhaupt losgeht - ansonsten funktioniert meistens weder die Backspace- ̈ ̈ Taste noch deutsche Umlaute. Desweiteren mussen umstandliche Tasten- ̈ kombinationen verwendet werden, um eine Datei zu speichern, zu laden usw. Dieser Editor hat aber einige Vorzuge, insbesondere Entwickler interes- ̈ sant. Durch externe Module wie folding.el (Suchmaschine benutzen, ist ein ̈ externes Projekt) kann man dann spater das Folding benutzen und Texte ̈ zusammenklappen und wieder ausbreiten, um in großen Listings den Uber- blick zu behalten. ̈ Fur kleine Dateien eignet sich der VI besser (weniger umstandliche Abfra- ̈ gen).

Standard-Einstellungen

Meine Standard-Einstellungen fur Emacs, damit deutsche Umlaute und vor ̈ allem auch die Backspace-Taste in nahezu allen Situationen funktioniert:


Datei: .emacs
(standard-display-european 1)
(set-language-environment ’Latin-1)
(set-input-mode
   (car (current-input-mode))
   (nth 1 (current-input-mode)) 0)
(global-set-key "\C-h" ’delete-backward-char)
(global-set-key "\C-?" ’delete-char)
(global-set-key [backspace] ’delete-char)
(global-set-key [delete] ’delete-char)
(global-set-key [home] ’beginning-of-line)
(global-set-key [end] ’end-of-line)

Die wichtigsten Tastenkombinationen

Mit C- ist die STRG-Taste gemeint, mit M- die ESC-Taste. M steht fur Meta- ̈ Charakter, ein Substitutionsbegriff fur eine bestimmte Taste. ALT ist die ALT- ̈ Taste. Fragen Sie mich besser nicht nach dem Warum, es sind meistens die Emacs-Notationen die wir leidend uber uns ergehen lassen mussen. ̈ ̈ Wenn Sie sich mal irgendwo verlaufen, genugt meistens die dreimalige Be- ̈ nutzung von ESC (also ESC ESC ESC). Stellen Sie, falls Sie Probleme mit dem Keyboard haben zuerst wie oben genannt Ihre Tastatur richtig ein - ich habe es Ihnen gesagt - denken Sie daran. ̈ Beispiel fur C-x-f ware dann: STRG gedruckt halten, dann x, f und RE- ̈ ̈ TURN.


C- = STRG TASTE, M- = ESC TASTE!
Dateien:
                             ̈ffnen / laden
C-x-f              Datei    o
C-x-s              Datei    speichern
C-x-w              Datei    speichern unter
C-x i              Datei    an Cursorposition einf ̈gen     u
Windows:
C-x 5 2            Neues Fenster
C-x 2              Fenster vertikal splitten
C-x 1              Bis auf das aktuelle Fenster alle entfernen
C-x-c              Speichern und Ende
Men ̈:
    u
M-tmm-menu         Men ̈funktionen anzeigen
                        u
Sonstiges:
C-x-u              Undo
Folgendes funktionierte bei mir nicht:
ALT-D              Wort l ̈schen (ALT Taste)
                            o
ALT-RETURN         Vorheriges Wort l ̈schen   o
C-k                Zeilenende l ̈scheno
ALT-M              N ̈chsten Absatz l ̈schen
                    a                        o
Copy/Paste:
C-LEERTASTE        unsichtbaren Markierer setzen
C-w                Bereich l ̈schen
                               o
C-y                An Cursorposition einf ̈gen u
Suchen/Ersetzen:
C-s                Suchtext
M-C-s              Regul ̈rer Ausdruck
                         a
C-s C-s            Weitersuchen
Eine .el Datei (Erweiterung) in Bytecode umwandeln:
M-x byte-compile
Inhalte eines Regex ersetzen (RET=RETURN-Taste):
Durch \1 wird dem Parser das Ergebnis von (.*)  ̈bergeben,   u
um den Text zu substituieren.
M-x query-replace-regexp RET
 anfang\(.*\)ende RET
 inhalt \1 inhalt RET
Mehrere Dateien durchsuchen/ersetzen:
Shell: etags *.cpp (alle cpp Dateien in eine Liste)
Emacs: Tags mit M-x visit-tags-table einladen und durch
         M-x tags-query-replace ersetzen,  ̈hnlich wie bei
                                                   a
         query-replace-regexp
            
̈

Wie Sie sehen, eine recht umstandliche Angelegenheit. Je nachdem, wel- chen Dateityp Sie laden (TXT, C++ usw.) werden spezielle Modis aktiviert, die Ihnen das Leben erleichtern werden. Archive fur Emacs-Erweiterungen ̈ Siehe ftp://archive.cis.ohio-state.edu/pub/gnu/emacs/ 2.3.5 Einen Ladepfad fur Erweiterungen hinzufugen

̈ ̈ Datei: .emacs (setq load-path (append load-path (list "/verzeichnis"))) Ein Erweiterungsmodul laden Datei: .emacs (require ’Dateiname_ohne_.el) ̈ 2.3.7

Menu-Taste andern

̈ Standard ist F10, aber wie so oft funktioniert auch diese Taste nicht. Datei: .emacs (global-set-key [menu] ’keyboard-quit) # STRG-G Taste 2.3.8 Folding-Mode Im Netz nach folding.el suchen von Jari Aalto, Anders Lindgren, folding.el in das Emacs-Verzeichnis (irgendwo in /usr/...) reinkopiert, meine .emacs sieht fur das Folding dann so aus und in den Useracccount reinkopiert, mit ̈ dem man sich zuerst eingeloggt hat (wichtig):

Datei: .emacs
(require ’folding)

So funktioniert ́s:
;;         To enter a fold, use ‘C-c @ >’. To show it
           without entering,
;;         use ‘C-c @ C-s’, which produces this display:
;;
;;               ;;{{{ Minor modes
;;
;;               ;;{{{ Follow mode...
;;               ;;{{{ Font-lock mode...
;;               ;;{{{ Folding...
;;
;;               ;;}}}
;;
;;         To show everything, just as the file would
           look like if Folding
;;         mode hadn’t been activated, give the command
;;         ‘M-x’ ‘folding-open-buffer’ ‘RET’, normally
   bound to ‘C-c’ ‘@’ ‘C-o’.
;; To close all folds and go to the top level,
   the command
;; ‘folding-whole-buffer’ could be used.
;

weiter
Es sind einige Seiten aus Band 1 online. Unten gibt es einen Link auf WEITER. Der erste Buchteil behandelt Shellbefehle. Man sollte die Shell nicht unterschätzen. Ich habe großen Wert auf einen Praxisbezug gelegt, außerdem gibt es jedes Jahr eine neue Version - seit vielen Jahren. Immer voll mit den neuesten Tipps und Tricks aus der Praxis.
F: Seit wann gibt es diese Bücher A: Seit 2001 bis heute! F: Wann erscheinen die nächsten Bände 8-10 A: Die Themen Clustering, Replikation, Virtualisierung usw sind in Arbeit F: Kann man Sie für ein IT-Coaching buchen? A: Ja. F: Warum verlegen Sie selbst, so wird man doch nie bekannt? A: Wir werden sehen.
Aktuelles