07.05.2024, 05:30 UhrDeutsch | English
Hallo Gast [ Registrierung | Anmelden ]

Was erzählen die Leute im Forum eigentlich immer ?


Und was dahinter steckt ...

Diese Seite richtet sich an alle, die schon ein Linux laufen haben, aber noch nicht wissen, was man damit noch so alles an- und einstellen kann, wie z.B. S.u.S.E -> Debian-Umsteiger, also Leute am Übergang von Mausschubser zum Konsolentippser.
Hier sollen alle Begriffe gesammelt werden, die von Anfängern möglicherweise nicht verstanden werden, damit im Forum immer auf diese Seite verwiesen werden kann.


Ausgabe eines Befehls mit > / >> in eine Datei umleiten

Alle Programme haben die Möglichkeit, Ausgaben auf die Konsole auszugeben. Dies passiert z.B. wenn auf Eingaben reagiert wird, wenn Fehler auftreten oder einfach um Aktionen, die das Programm durchführt, zu protokollieren (Logfile).

Dies macht man normalerweise auf 2 Arten:
>-Standard-Ausgabe (0)
>-Standardfehler-Ausgabe (2)

Um die Ausgabe umzuleiten, dafür gibt es das >-Zeichen.
>-ein >-Zeichen (über)schreibt die Ausgabe in eine (vorhandene) Datei
>-zwei >-Zeichen hintereinander, fügt die Ausgabe an eine (bereits existierende) Datei an

In beiden Fällen wird eine Datei angelegt, sofern sie nicht existiert.

Beispiel 1:
DerPrompt>Befehl > ./DieAusgabevonBefehl.txt
Die Standard-Ausgabe von Befehl wird in die Datei "DieAusgabevonBefehl.txt" geschrieben, jeder bereits vorhandene Inhalt wird ueberschrieben.

Beispiel 2:
DerPrompt>Befehl >> ./DieAusgabevonBefehl.txt
Die Standard-Ausgabe von Befehl wird an die Datei "DieAusgabevonBefehl.txt" angehängt, jeder bereits vorhandene Inhalt wird nicht ueberschrieben.

Standardfehler-Ausgabe umleiten:

Um die Fehler-Ausgabe umzuleiten, wird vor dem >-Zeichen die entsprechende Angabe (hier 2) gesetzt,
damit wird dann nur die Warning-Ausgabe umgeleitet. Die Standard-Ausgabe erscheint weiterhin auf der Konsole.

Beispiel 1:
DerPrompt>Befehl 2> ./DieAusgabevonBefehl.txt
Die Fehler-Ausgabe von Befehl wird in die Datei "DieAusgabevonBefehl.txt" geschrieben, jeder bereits vorhandene Inhalt wird ueberschrieben.

Beispiel 2:
DerPrompt>Befehl 2>>./DieAusgabevonBefehl.txt
Die Fehler-Ausgabe von Befehl wird an die Datei "DieAusgabevonBefehl.txt" angehängt, jeder bereits vorhandene Inhalt wird nicht ueberschrieben.

Standard- & Standardfehler-Ausgabe umleiten:

Um beide Ausgaben umzuleiten, verwenden wir das &1-Zeichen.

Beispiel 1:
DerPrompt>Befehl 2>&1 > ./DieAusgabevonBefehl.txt
Die Fehler-Ausgabe von Befehl wird in die Datei "DieAusgabevonBefehl.txt" geschrieben, jeder bereits vorhandene Inhalt wird ueberschrieben.

Beispiel 2:
DerPrompt>Befehl 2>&1 >>./DieAusgabevonBefehl.txt
Die Fehler-Ausgabe von Befehl wird an die Datei "DieAusgabevonBefehl.txt" angehängt, jeder bereits vorhandene Inhalt wird nicht ueberschrieben.

Weitere Möglichkeiten stehen in der man-Page von bash bzw. sh
man bash


Die Pipe |

Das Pipe-Zeichen erreicht man mit der Tastenkombination "AltGr+<>".
Genutzt wird die Pipe um die Ausgabe eines Befehls durch einen zweiten Befehl direkt weiterverarbeiten zu können.

Befehl1 | Befehl2

Beispiel 1:
DerPrompt>locate bin | grep aMule
Im Beispiel wird locate bin aufgerufen,
das Ergebnis wird aber nicht ausgegeben, sondern weitergereicht an den zweiten Befehl grep aMule.
Als Ausgabe wird das dargestellt, was grep aMule aus den Daten von locate bin gemacht hat,
in diesem Fall zeigt es nur die Zeilen an, in denen das Muster "aMule" vorkommt.


Befehle bei jedem Start ausführen

Bei jedem Start von Kanotix werden verschiedene Programme gestartet,
die bestimmte Dinge tun, z.B. Geräte einbinden, den X-Server starten, etc.

Um nun evt. zusätzliche Programme bei jedem Neustart mit zu starten,
bietet sich die Datei /etc/init.d/bootmisc.sh an.

Da die Datei nicht von jedem verändert werden soll (jeder Hacker würde sich darüber freunen),
ist diese Datei nur als Benutzer root beschreibar.
Am öffnet man eine Konsole und ruft die Datei mit:
DerPrompt>sudo vi /etc/init.d/bootmisc.sh
auf und fügt den Aufruf, für das Programm was man starten will, am Ende an.

sudo ermöglicht es, das ein normaler Benutzer bestimmte Programme mit root-Berechtigung starten kann,
ohne das root-Passwort zu kennen.
Alternativ kann man sich natürlich auch als root anmelden.


Dateien nach einem Muster durchsuchen

Oft möchte man Dateien nach bestimmten Zeichenketten oder Mustern durchsuchen.
Hierfür bietet sich grep an.
grep durchsucht die angegebenen Dateien nach dem angegebenen String
und zeigt dann die entsprechende Zeile an, in der das zusuchende Wort enthalten ist.

Beispiel 1:
DerPrompt>grep Hallo ./HalloWelt.txt
Im Beispiel wird in der Datei "HalloWelt.txt" Das Wort "Hallo" gesucht.
Steht in der Datei der Text "Hallo Welt" erscheint dann als Ausgabe:
Hallo Welt
DerPrompt>


Man hat auch die Möglichkeit, mit sogenannten Regular Expressions? Zeichenketten zu beschreiben.

Beispiel 2:
DerPrompt>grep ^Hallo ./HalloWelt.txt
grep zeigt alle Zeilen an, wo das Wort "Hallo" am Anfang einer Zeile steht.
Dies erfolgt durch die Angabe des ^ (Caret-Zeichen) am Anfang des zu suchenden Wortes.
Mit dem $-Zeichen sucht man alle Zeilen, wo die entsprechende Zeichenkette am Ende der Zeile steht.

Beispiel 3:
DerPrompt>grep Welt$ ./HalloWelt.txt

Weitere steht in der Hilfe zu grep und regexp
DerPrompt>man grep
DerPrompt>man regexp



:3: locate - Dateien suchen :3:
debian hat ein ganz grossartiges Tool namens locate. Wenn man eine Datei sucht, gibt man
locate bin
ein und erhaelt ratzfatz eine Liste aller Dateien, deren (voller) Name (also inklusive Pfad) das Muster bin enthält. Ratzfatz deshalb, weil locate sich einer Datenbank bedient, die man hin und wieder mit updatedb (darf nur root) aktualisieren muß.



:3: vi - Konsoleneditor :3:
Mein liebster für Konfigurationsdateiengefummel (sehr praktisch: farbliche Syntax-Markierung). Drei Takte zum Einstieg: Nach dem Aufruf ist man im Betrachtermodus; mit der Einfg-Taste kommt man in den Editiermodus, mit ESC wieder zurück. Editiermodus ist einigermaßen verständlich, im Betrachtermodus kann man aber auch Befehle (über Tastenkombinationen) ausführen:

:q beendet vi (wenn die Datei nicht verändert wurde)
:q! beendet vi, ohne die Änderungen zu speichern
:wq speichert die Änderungen, beendet vi dann (write, quit)
dd löscht die aktive Zeile
5dd löscht die aktive und die 4 folgenden Zeilen
x löscht das aktive Zeichen (wie Entf, nicht wie Backspace)
r 8 ersetzt das aktive Zeichen durch eine 8
/mnt sucht (sukzessive während man das "mnt" tippt) nach "mnt". Alle weiteren "mnt" findet man mit "n"

Sehr viel mehr kann ich auch nicht. Wenn man sich mal in einem komischen Befehl verirrt hat, im Zweifelsfall ESC drücken, bis man wieder in den normalen Betrachtermodus kommt.




zurück
XML Revisions of $tag
Seiten-History :: Letzter Editor : RoEn :: Eigentümer : SeverinM ::
Powered by pnWikka 1.0
 
 
Deutsch | English
Logos and trademarks are the property of their respective owners, comments are property of their posters, the rest is © 2004 - 2006 by Jörg Schirottke (Kano).
Consult Impressum and Legal Terms for details. Kanotix is Free Software released under the GNU/GPL license.
This CMS is powered by PostNuke, all themes used at this site are released under the GNU/GPL license. designed and hosted by w3you. Our web server is running on Kanotix64-2006.