STRG+V

10er Forum RS Rennerod
Verfügbare Informationen zu "STRG+V"

  • Qualität des Beitrags: 0 Sterne
  • Beteiligte Poster: nossinger - Juliaaan - Wilhelm von Nassau - pflaume - L!edL - gietschess - Tim - fL0r!4N
  • Forum: 10er Forum RS Rennerod
  • Forenbeschreibung: 10er-Forum
  • aus dem Unterforum: Spam
  • Antworten: 26
  • Forum gestartet am: Sonntag 25.02.2007
  • Sprache: deutsch
  • Link zum Originaltopic: STRG+V
  • Letzte Antwort: vor 16 Jahren, 10 Monaten, 27 Tagen, 2 Stunden, 26 Minuten
  • Alle Beiträge und Antworten zu "STRG+V"

    Re: STRG+V

    nossinger - 11.04.2007, 12:28

    STRG+V
    zeigt ma her was ihr da so habt ;>

    ich mach ma den anfang: http://10erforum.de.ki/

    man muss ya auch irgendwie hier hin kommen ;>



    Re: STRG+V

    Juliaaan - 11.04.2007, 20:15


    1Z0V97666859019767 :D



    Re: STRG+V

    nossinger - 11.04.2007, 20:40


    woho der 1. der hier ma was schreibt..scheint ja wohl nich so der bringer zu sein ;<strg>



    Re: STRG+V

    Wilhelm von Nassau - 11.04.2007, 21:09


    In meiner Zwischenablage ist:

    willauchwillauchwillauchwillauchwillauch

    von einem eben geschriebenen Beitrag ^^



    Re: STRG+V

    pflaume - 11.04.2007, 21:55


    Kapitel 5. Kommandozeilenwerkzeuge
    Wir möchten Ihnen in diesem Kapitel einige Werkzeuge für die Kommandozeile vorstellen, die sich im täglichen
    Einsatz als hilfreich erweisen können. Wenn Sie ausschließlich die grafische Oberfläche bevorzugen,
    können Sie dieses Kapitel sicher überspringen. Allerdings könnte ein kurzer Einblick Ihre Meinung auch ändern.
    Jeder Befehl wird durch Beispiele erläutert. Dieses Kapitel ist aber auch als Übung für Sie gedacht um Funktionen
    und die Benutzung der Befehle zu verstehen.
    5.1 Dateioperationen und Filter
    Die meisten Operationen auf der Kommandozeile beziehen sich auf Dateien. In diesem Abschnitt behandeln
    wir das Betrachten und Filtern von Dateiinhalten, holen uns durch einfache Befehle benötigte Informationen
    aus Dateien und sortieren den Inhalt einer Datei.
    5.1.1 cat, tail, head, tee: Befehle zur Dateiausgabe
    Alle diese Befehle haben fast die gleiche Syntax: befehls_name [Option(en)] [Datei(en)]. Sie können auch
    mittels einer Pipe miteinander verbunden werden. Diese Befehle haben das gleiche Ziel: das Darstellen einer
    Datei nach bestimmten Kriterien.
    Das Werkzeug cat verbindet Dateien und gibt das Resultat auf der Standardausgabe aus. Es ist eines der
    meistgenutzten Werkzeuge. Schreiben Sie beispielsweise
    # cat /var/log/mail/info
    um den Inhalt des Mailtransport-Logs auf der Standardausgabe darzustellen1. cat besitzt eine sehr hilfreiche
    Option (-n), mit der bei der Ausgabe die Zeilen nummeriert werden.
    Da einige Dateien, speziell Log-Dateien von Diensten (wenn diese aktiv sind), gewöhnlich recht umfangreich
    sind2, ist die Ausgabe der gesamten Datei auf dem Bildschirm nicht sehr hilfreich. Normalerweise benötigen
    Sie nur die Ansicht einiger Zeilen aus solch einer Datei. Dazu können Sie den Befehl tail benutzen. Das
    folgende Kommando gibt standardgemäß die letzten 10 Zeilen der Datei (also etwa /var/log/mail/info)
    aus:
    # tail /var/log/mail/info
    Mit der Option -n zeigen Sie die letzten n Zeilen einer Datei an, etwa die letzten beiden Zeilen:
    # tail -n2 /var/log/mail/info
    Der Befehl head ist dem Befehl tail sehr ähnlich, zeigt aber die ersten Zeilen einer Datei. Mit dem folgenden
    Befehl zeigen Sie die ersten 10 Zeilen der Datei /var/log/mail/info an:
    # head /var/log/mail/info
    Wie bei tail können Sie auch hier die Option -n zur Angabe der anzuzeigenden Zeilenanzahl einsetzen. Die
    ersten beiden Zeilen werden mit diesem Befehl angezeigt:
    # head -n2 /var/log/mail/info
    Sie können diese beiden Befehle gemeinsam nutzen. Um etwa die Zeilen 9 und 10 anzuzeigen, lassen Sie head
    die ersten 10 Zeilen der Datei auswählen und schicken das Ergebnis dann durch eine Pipe zum Befehl tail.
    # head /var/log/mail/info | tail -n2
    1. Einige Beispiele dieses Abschnitts basieren auf realistischen Arbeitsgängen mit Log-Dateien und Servern (Systemdiensten,
    Daemons). Dabei muss der Protokolldienst syslogd (er steuert die Logfunktion der Dienste) laufen. Für obiges
    Beispiel muss auch der E-Mail Dienst (etwa Postfix) laufen und Sie müssen als root angemeldet sein. Natürlich können
    Sie unsere Beispiele auch auf andere Dateien anwenden.
    2. So enthält beispielsweise die Datei /var/log/mail/info Informationen über alle gesendeten E-Mails, über den Empfang
    der Mails von Benutzern des POP-Protokolls, usw.
    41
    Kapitel 5. Kommandozeilenwerkzeuge
    Der zweite Teil des Kommandos wählt dann die letzten beiden Zeilen aus und stellt sie auf dem Bildschirm
    dar. In gleicher Weise wählen Sie die Zeile 20, gezählt vom Ende der Datei:
    # tail -n20 /var/log/mail/info |head -n1
    In diesem Beispiel weisen wir tail an, die letzten 20 Zeilen der Datei auszuwählen und sie durch eine Pipe
    an head zu übergeben. Der Befehl head zeigt dann die erste Zeile der ihm übergebenen Auswahl an.
    Nehmen wir an, wir wollen das Resultat des letzten Beispiels auf dem Bildschirm darstellen und es gleichzeitig
    in der Datei results.txt speichern. Dabei hilft uns das Werkzeug tee. Dessen Syntax wie folgt lautet:
    tee [Option(en)] [Datei]
    Jetzt können wir den vorherigen Befehl ändern:
    # tail -n20 /var/log/mail/info |head -n1|tee results.txt
    Lassen Sie uns ein weiteres Beispiel ansehen. Wir wollen die letzten 20 Zeilen auswählen, sie in der Datei
    results.txt speichern, aber nur die erste der 20 Zeilen am Bildschirm ansehen. Dazu geben wir ein:
    # tail -n20 /var/log/mail/info |tee results.txt |head -n1
    Der Befehl tee besitzt eine hilfreiche Option (-a), die das Anhängen von Daten an eine existierende Datei
    ermöglicht.
    Gehen wir zurück zum Befehl tail. Da laufende Dienste kontinuierlich neue Aktionen und Ereignisse in ihren
    Log-Dateien speichern, ändern sich diese Dateien dauernd. Wenn Sie diese Veränderungen der Log-Datei in
    Echtzeit verfolgen wollen nutzen Sie die Option -f von tail:
    # tail -f /var/log/mail/info
    Hier werden alle Änderungen der Datei /var/log/mail/info sofort auf dem Bildschirm angezeigt. Diese
    Vorgehensweise ist besonders hilfreich, wenn man die Arbeitsweise des Systems beobachten will. Man kann
    beispielsweise bei der Verfolgung der Datei /var/log/messages die Meldungen des Systems und verschiedener
    Systemdienste beobachten.
    Im nächsten Abschnitt werden wir zeigen, wie man mit Hilfe des Befehls grep die Meldungen des Postfix
    Dienstes aus allen anderen Meldungen herausfiltert.
    5.1.2 grep: Auffinden von Textfolgen in Dateien
    Weder der Name noch die Abkürzung („General Regular Expression Parser“) sind sehr intuitiv, um so einfacher
    ist das, was dieser Befehl macht und wie er benutzt wird: grep durchsucht eine oder mehr Dateien nach einem
    angegebenen Muster. Die Syntax lautet:
    grep [Option(en)] <muster> [Datei(en)]
    Werden mehrere Dateien angegeben, so wird im Suchergebnis der Name der jeweiligen Datei vor der jeweiligen
    Fundstelle angezeigt. Mit der Option -h schalten Sie diese Anzeige aus. Die Option -l bewirkt, dass nur
    die auf das Suchmuster passende Dateinamen ausgegeben werden. Das Muster ist ein regulärer Ausdruck,
    wenn es auch meist nur aus einem einfachen Wort besteht. Es folgen die meistgenutzten Optionen von grep:
    • -i: führt eine case insensitive Suche durch, d.h. Unterschiede in der Groß-/Kleinschreibung werden ignoriert;
    • -v: umgekehrte Suche. Zeigt die Zeilen an, die das Muster nicht enthalten;
    • -n: zeigt die Zeilennummer für jede Fundstelle an;
    • -w: weist grep an, nur nach dem Muster als ganzem Wort zu suchen.
    Lassen Sie uns zur Untersuchung der Log-Datei des E-Mail-Dienstes zurückkehren. Wir wollen alle Zeilen in
    der Datei /var/log/mail/info finden, die das Muster „postfix“ enthalten. Dazu geben wir folgendes Kommando
    ein:
    # grep postfix /var/log/mail/info
    42
    Kapitel 5. Kommandozeilenwerkzeuge
    Der grep-Befehl kann auch in einer Pipe benutzt werden. Daher bekommen wir das gleiche Resultat wie eben
    auch mit diesem Kommando:
    # cat /var/log/mail/info | grep postfix
    Wenn wir alle Zeilen auflisten wollen, die das Muster „postfix“ nicht enthalten, benutzen wir die Option -v:
    # grep -v postfix /var/log/mail/info
    Nehmen wir an, wir wollen alle Meldungen über erfolgreich versandte Mails finden. In diesem Fall müssen
    wir alle Zeilen der Log-Datei ausfiltern, die vom E-Mail Dienst stammen (also das Muster „postfix“ enthalten)
    und diese Zeilen nach der Meldung über einen erfolgreichen Versand („status=sent“) durchsuchen:
    # grep postfix /var/log/mail/info |grep status=sent
    Hier wird grep zweimal nacheinander benutzt. Das ist zwar erlaubt aber nicht besonders elegant.Wir erreichen
    das gleiche Ergebnis mit dem Befehl fgrep. Zuerst müssen wir eine Datei mit den Suchmustern erstellen. Die
    Muster müssen darin in einer Spalte untereinander angeordnet sein. Diese Datei (wir benutzen den Namen
    patterns.txt) wird mit dem folgenden Kommando erstellt:
    # echo -e ’status=sent\npostfix’ >./patterns.txt
    Nun rufen wir das nächste Kommando auf, bei dem wir die Datei patterns.txt mit ihrer Liste der Suchmuster
    an das Werkzeug fgrep übergeben anstatt die „Doppelnutzung“ von grep anzuwenden:
    # fgrep -f ./patterns.txt /var/log/mail/info
    Die Datei ./patterns.txt darf beliebig viele Suchmuster enthalten, wobei jedes Muster in einer Zeile für
    sich stehen muss. Um nun beispielsweise alle erfolgreich abgesandten Mails an peter@mandrakesoft.com zu
    finden, genügt es, mit folgendem Befehl die Mailadresse in die Datei ./patterns.txt einzufügen:
    # echo ’peter@mandrakesoft.com’ >>./patterns.txt
    Natürlich können Sie grep mit tail und head kombinieren. Die vorletzte Mail an peter@mandrakesoft.com
    finden Sie mit der folgenden Kommandozeile:
    # fgrep -f ./patterns.txt /var/log/mail/info | tail -n2 | head -n1
    Hier wenden wir den oben beschriebenen Filter an und schicken das Resultat über eine Pipe an die Befehle
    tail und head. Diese suchen dann den vorletzten Eintrag aus.
    5.1.3 wc: Z¨ahlen von Elementen in Dateien
    Der Befehl wc (Word Count) wird zum Erfassen der Anzahl von Zeichenfolgen und Wörtern in Dateien benutzt.
    Er hilft auch beim Zählen von Bytes, einzelnen Zeichen und beim Auffinden der längsten Zeile. Die Syntax ist
    wie folgt:
    wc [Option(en)] [Datei(en)]
    Einige hilfreiche Optionen:
    • -l: gibt die Anzahl der Zeilen aus;
    • -w: gibt die Anzahl der Wörter aus;
    • -m: gibt die Gesamtzahl der Zeichen aus;
    • -c: gibt die Anzahl der Bytes aus;
    • -L: gibt die Länge der längsten Zeile des jeweiligen Textes aus.
    Standardmäßig gibt der Befehl wc die Anzahl der Zeilen, Wörter und Zeichen aus. Es folgen einige Anwendungsbeispiele:
    Gesucht wird die Anzahl der Benutzer in unserem System:
    # wc -l /etc/passwd
    43
    Kapitel 5. Kommandozeilenwerkzeuge
    Gesucht wird die Anzahl der Prozessoren in unserem System:
    # grep "model name" /proc/cpuinfo |wc -l
    Im vorigen Abschnitt ließen wir uns eine Liste der erfolgreich versandten Mails an Adressen in der Datei
    ./patterns.txt anzeigen. Wenn wir nun die Anzahl dieser Mails wissen wollen, können wir das Resultat
    des Filters durch eine Pipe an den Befehl wc schicken:
    # fgrep -f ./patterns.txt /var/log/mail/info | wc -l
    5.1.4 sort: Sortieren des Datei-Inhaltes
    Hier die Syntax dieses mächtigen Sotierwerkzeugs3:
    sort [Option(en)] [Datei(en)]
    Lassen Sie uns einen Teil der Datei /etc/passwd sortieren. Wie Sie sehen können, ist der Inhalt nicht sortiert:
    $ cat /etc/passwd
    Zur Sortierung nach dem Feld login verwenden wir den folgenden Befehl:
    $ sort /etc/passwd
    Der Befehl sort sortiert, ohne Optionen gestartet, Daten in aufsteigender Folge, beginnend beim ersten Feld
    (in unserem Fall das Feld login). Wenn wir die Daten in absteigender Folge sehen wollen müssen wir die
    Option -r verwenden:
    $ sort -r /etc/passwd
    Jeder Benutzer hat seine eigene UID in der Datei /etc/passwd. Lassen Sie uns die Datei in absteigender Folge
    nach dem Feld UID sortieren:
    $ sort /etc/passwd -t":" -k3 -n
    In diesem Beispiel werden die folgenden sort Optionen verwendet:
    • -t":": legt fest, dass das Trennungszeichen zwischen den Feldern das Zeichen ":" ist;
    • -k3: die Sortierung soll nach dem dritten Feld erfolgen;
    • -n: die Sortierung soll nur numerische Daten umfassen, keine alphabetischen Daten.
    Das Gleiche kann man natürlich auch in umgekehrter Folge machen:
    # sort /etc/passwd -t":" -k3 -n -r
    sort hat zwei weitere wichtige Optionen:
    • -u: führt eine strikte Sortierung durch, doppelte Felder werden missachtet;
    • -f: ignoriert Groß-/Kleinschreibung.
    Wenn wir schließlich den Benutzer mit der höchsten UID finden wollen, benutzen wir diese Befehlskette:
    $ sort /etc/passwd -t":" -k3 -n |tail -n1
    wobei wir die Datei /etc/passwd in aufsteigender Folge nach dem Feld UID sortieren und das Resultat durch
    eine Pipe an das Programm tail übergeben. Dieses gibt den ersten Wert der Liste aus.
    3. Wir behandeln sort hier nur kurz, man könnte aber über die gesamten Eigenschaften ganze Bücher schreiben.
    44
    Kapitel 5. Kommandozeilenwerkzeuge
    5.2 find: Sucht nach Dateien, die vorgegebenen Kriterien entsprechen
    find ist eines der althergebrachten UNIX®-Werkzeuge. Seine Aufgabe ist es, rekursiv ein oder mehrere Verzeichnisse
    nach Dateien zu durchsuchen, die ein gegebenes Muster aufweisen. Einerseits ist das Werkzeug
    sehr hilfreich, andererseits ist seine Syntax nicht einfach und es braucht einige Übung bevor man es richtig
    anwenden kann. Die allgemeine Syntax lautet:
    find [Verzeichnis] [Option(en)] [Test] [Aktion]
    Ohne Angabe eines Verzeichnisses wird das aktuelle Verzeichnis durchsucht. Ohne spezielle Suchkriterien
    wird das Ergebnis wie „vorhanden“ gewertet und daher alle vorhandenen Dateien aufgelistet. Die möglichen
    Optionen, Tests und Aktionen sind derart zahlreich, dass wir hier nur einige wenige behandeln. Lassen Sie
    uns mit den Optionen beginnen:
    • -xdev: keine Suche in Verzeichnissen, die auf anderen Dateisystemen liegen.
    • -mindepth <n>: Beginn der Suche erst n Stufen unterhalb des angegebenen Verzeichnisses.
    • -maxdepth <n>: Suche nach Dateien in maximal n Stufen unterhalb des angegebenen Verzeichnisses.
    • -follow: Verfolgen von symbolischen Links falls diese auf Verzeichnisse zeigen. Standardmäßig folgt find
    den Links nicht.
    • -daystart: bei zeitbezogenen Tests (siehe unten) wird der aktuelle Tag als Zeitmarke benutzt anstelle des
    standardmäßigen Zeitstempels, der 24 Stunden zur aktuellen Zeit zurück liegt.
    Ein Test kann einer oder mehrere elementare Eigenschaften umfassen. Einige dieser Eigenschaften sind:
    • -type <file_type>: Suche nach einem angegebenen Dateityp. Der Dateityp kann einer der folgenden sein:
    f (normale Datei), d (Verzeichnis), l (symbolischer Link), s (Socket), b (blockorientierte Datei), c (zeichenorientierte
    Datei) oder p (eine „named Pipe“).
    • -name <pattern>: findet Dateien, die dem gegebenen Muster entsprechen. Mit dieser Optionwird das Muster
    wie ein Muster für Shell Namenserweiterung angesehen (siehe Kapitel Platzhalter in der Shell, Seite 26).
    • -iname <pattern>: gleiche Wirkung wie -name, allerdings ohne auf Groß-/Kleinschreibung zu achten.
    • -atime <n>, -amin <n>: findet Dateien, die zuletzt vor n Tagen (-atime) oder vor n Minuten (-amin) geöffnet
    wurden. Sie können auch die Optionen <n> oder <n> angeben, wobei die Suche nach Dateien ausgeführt
    wird, die vor höchstens oder mindestens n Tagen/Minuten geöffnet wurden.
    • -anewer <a_file>: sucht nach Dateien, die später als die Datei a_file geöffnet wurden.
    • -ctime <n>, -cmin <n>, -cnewer <file>: gleiche Wirkung wie bei den Optionen -atime, -amin und -
    anewer, bezieht sich aber auf den Zeitpunkt der letzten Änderung des Inhaltes der Datei.
    • -regex <pattern>: gleicheWirkung wie die Option -name. Allerdings wird pattern als regulärer Ausdruck
    behandelt.
    • -iregex <pattern>: wie -regex, allerdings ohne Beachtung von Groß-/Kleinschreibung.
    Es gibt zahlreiche andere Tests, die Sie in find(1) finden können. Zusammengesetzte Tests können Sie in dieser
    Art anwenden:
    • <c1> -a <c2>: ist wahr, wenn sowohl c1 als auch c2 zutreffen; -a ist sowieso vorgegeben, also können Sie
    <c1> <c2> <c3> schreiben, wenn c1, c2 und c3 zutreffen sollen.
    • <c1> -o <c2>: ist wahr, wenn entweder c1 oder c2 zutreffen oder beide. Beachten Sie, dass -o eine niedrigere
    Priorität als -a besitzt. Daher müssen Sie bei der Suche nach Dateien, die entweder auf c1 oder c2
    und auf c3 passen, eine Klammerkonstruktion verwenden: ( <c1> -o <c2> ) -a <c3>. Klammern als Teil
    eines Ausdrucks müssen maskiert werden, da sie sonst von der shell interpretiert werden!
    • -not <c1>: kehrt Bedingungen um, also ist -not <c1> wahr, wenn c1 nicht zutrifft.
    Schließlich können Sie für jede gefundene Datei auch eine Aktion festlegen. Die meist genutzten Aktionen
    sind:
    • -print: gibt einfach den Namen der Datei auf der Standardausgabe an. Das ist die Standard-Aktion.
    • -ls: gibt auf der Standardausgabe das Äquivalent des Befehls ls -ilds für jede gefundene Datei aus.
    45
    Kapitel 5. Kommandozeilenwerkzeuge
    • -exec <command_line>: wendet die Befehlszeile command_line auf jede gefundene Datei an. Die Befehlszeile
    command_line muss mit dem Zeichen ; enden, das allerdings wieder maskiert werden muss um nicht
    von der shell interpretiert zu werden. Der Dateiname wird dabei von {} eingefasst. Siehe Beispiele.
    • -ok <command>: identisch mit -exec. Allerdings wird bei jeder Datei eine Bestätigung verlangt.
    Am besten kann man all diese Optionen und Parameter mit einigen Beispielen darstellen. Nehmen wir an, Sie
    wollen alle Unterverzeichnisse im Verzeichnis /usr/share auflisten. Die Eingabe dazu lautet:
    # find /usr/share -type d
    Angenommen, Sie betreiben einen HTTP Server und alle Ihre HTML-Dateien liegen im Verzeichnis /var/
    www/html, das auch das aktuelle Verzeichnis ist. Jetzt wollen Sie alle Dateien finden, die seit einem Monat
    nicht verändert wurden. Da die Seiten von verschiedenen Autoren stammen gibt es sowohl Dateien mit der
    Endung html als auch solche mit der Endung htm. Sie wollen all diese Dateien in das Verzeichnis /var/www/
    obsolete verlinken. Dazu geben Sie ein4:
    # find \( -name "*.htm" -o -name "*.html" \) -a -ctime -30 -exec ln {} /var/www/obsolete \;
    Dies ist ein recht komplexes Beispiel, das wir jetzt genauer erklären werden. Die Tests lauten wie Folgt:
    \( -name "*.htm" -o -name "*.html" \) -a -ctime -30
    wodurch das erreicht wird, was wir wollen: es findet alle Dateien, die auf .htm oder .html enden („\( -name
    "*.htm" -o -name "*.html" \) “) und (-a) die innerhalb der letzten 30 Tage nicht verändert wurden (-ctime
    -30). Beachten Sie die Klammern: sie müssen hier angewendet werden, da -a eine höhere Priorität hat. Ohne
    Klammern würden alle Dateien aufgelistet, die mit .htm enden und dazu alle Dateien, die mit .html enden
    und in den letzten 30 Tagen nicht geändert wurden. Das ist aber nicht genau das, was wir wollten. Beachten
    Sie auch, dass die Klammern maskiert wurden: Wenn wir ( .. ) anstelle von \( .. \) schreiben würden,
    hätte die shell die Klammern interpretiert und versucht, den Befehl -name "*.htm" -o -name "*.html" in
    einer Sub-Shell auszuführen... Weitere mögliche Arten der Maskierung bestehen in der Einfassung mit Anführungszeichen,
    jedoch ist hier ein Backslash vorzuziehen, da nur ein einzelnes Zeichen maskiert werden
    muss.
    Schließlich fehlt noch der für jede Datei auszuführende Befehl:
    -exec ln {} /var/www/obsolete \;
    Hier muss das Zeichen ; vor der shell maskiert werden, da die Shell das Zeichen anderenfalls als Befehlstrenner
    interpretieren und find das Fehlen eines Argumentes für -exec melden würde.
    Ein letztes Beispiel: Sie haben ein ausgedehntes Verzeichnis (/shared/images) mit allen möglichen Arten von
    Bilddateien. Sie benutzen regelmäßig den Befehl touch um den Zeitstempel der Datei stamp in diesem Verzeichnis
    als Zeitreferenz zu aktualisieren. Sie wollen nun alle JPEG-Bilder finden, die neuer als die Datei
    stamp sind. Da Ihre Bilder aus verschiedenen Quellen stammen, besitzen diese Bilder die Endungen jpg,
    jpeg, JPG oder JPEG. Natürlich wollen Sie auch keine Suche im alten Verzeichnis durchführen. Die Dateiliste
    soll per Mail an Sie geschickt werden (Ihr Kennzeichen ist birgit):
    # find /shared/images -cnewer \
    /shared/images/stamp \
    -a -iregex ".*\.jpe?g" \
    -a -not -regex ".*/old/.*" \
    | mail birgit -s "New images"
    Natürlich ist es nicht gerade effizient, diese Befehlszeile jedes Mal neu eingeben zu müssen. Außerdem soll
    der Befehl regelmäßig ausgeführt werden. Hier ist eine einfache Lösung zur regelmäßigen Ausführung des
    Befehls:
    4. Beachten Sie, dass sowohl /var/www als auch /var/www/obsolete im gleichen Dateisystem liegen müssen!
    46
    Kapitel 5. Kommandozeilenwerkzeuge
    5.3 Planung der Ausf¨uhrung von Befehlen
    5.3.1 crontab: Auflisten und Editieren der Datei crontab
    crontab ist ein Hilfsprogramm mit dem Sie Befehle in regelmäßigen Zeitintervallen starten können ohne
    dabei selbst am System angemeldet sein zu müssen. crontab wird die Ausgabe Ihres Befehls per Mail an
    Sie schicken. Sie können die Zeitintervalle in Minuten, Stunden, Tagen und sogar Monaten festlegen. Je nach
    angegebener Option verhält sich crontab unterschiedlich:
    • -l: gibt den Inhalt Ihrer aktuellen Datei crontab aus.
    • -e: damit starten Sie das Editieren der Datei crontab.
    • -r: entfernt Ihre aktuelle crontab-Datei.
    • -u <user>: führt eine der oben genannten Optionen für den Benutzer <user> aus. Das darf natürlich nur
    root.
    Fangen wir mit dem Editieren einer crontab-Datei an.Wenn Sie die Umgebungsvariable EDITOR oder VISUAL
    gesetzt haben befinden Sie sich nach der Eingabe von crontab -e in Ihrem bevorzugten Editor, anderenfalls
    wird Vi geöffnet. Eine Zeile in der crontab-Datei besteht aus sechs Feldern. Die ersten fünf Felder bestehen aus
    den Angaben für die Minuten, Stunden, Tage undWochentage des Intervalls. Das sechste Feld beinhaltet den
    auszuführenden Befehl. Zeilen, die am Anfang das Zeichen # aufweisen, werden als Kommentar betrachtet
    und von crond (dem Programm, das für die Ausführung der crontab-Dateien verantwortlich ist) ignoriert.
    Hier ist ein Beispiel einer crontab:
    Um das Folgende in lesbarer Form darzustellen, mussten einige lange
    Zeilen umbrochen und in einer neuen Zeile fortgesetzt werden.
    Wenn also am Ende einer Zeile das Zeichen \ steht, bedeutet das,
    dass die Zeile nach einem Umbruch fortgesetzt wird. Diese Konvention
    wird in Makefiles, in der shell und auch in anderen F¨allen
    eingesetzt.
    # Falls Sie nicht per Mail benachrichtigt werden wollen
    # kommentieren Sie die folgende Zeile aus:
    #MAILTO="your_email_address"
    #
    # Bericht ¨uber neue Bilder alle 2 Tage um 2 Uhr nachmittags,
    # ausgehend vom oben genannten Beispiel - danach soll die
    # "stamp"-Datei wieder aktualisiert werden.
    # Das Zeichen "%" wird als neue Zeile interpretiert.
    # Dadurch k¨onnen Sie mehrere Befehle in eine Zeile schreiben.
    0 14 */2 * * find /shared/images \
    -cnewer /shared/images/stamp \
    -a -iregex ".*\.jpe?g" \
    -a -not -regex \
    ".*/old/.*"%touch /shared/images/stamp
    #
    # Am ersten Weihnachtsfeiertag eine Melodie spielen :)
    0 0 25 12 * mpg123 $HOME/sounds/merryxmas.mp3
    #
    # Drucke jeden Dienstag um 17 Uhr die Einkaufsliste aus...
    0 17 * * 2 lpr $HOME/shopping-list.txt
    Es gibt ausser den hier gezeigten noch mehrere andere Arten, die Zeitintervalle anzugeben. Sie können etwa
    eine durch Kommata getrennte Folge von bestimmten Zahlen (1,14,23) oder einen Zahlenbereich (1-15), ja,
    sogar eine Kombination von beiden (1-10,12-20), optional mit einer Schrittangabe (1-12,20-27/2), angeben.
    Jetzt ist es an Ihnen, hier hilfreiche und sinnvolle Befehle einzugeben!
    47
    Kapitel 5. Kommandozeilenwerkzeuge
    5.3.2 at: Planen eines nur einmal auszuf¨uhrenden Befehls
    Sie möchten vielleicht auch einen Befehl eingeben, der einmal zu einer vorbestimmten Zeit, aber nicht regelmäßig
    ausgeführt wird. Lassen Sie sich beispielsweise an eine Verabredung um 18:00 Uhr erinnern. Sie
    arbeiten mit X, das Paket X11R6-contrib ist installiert und Sie wollen um 17:30 Uhr an den Aufbruch erinnert
    werden. Dann ist at das richtige Programm:
    $ at 5:30pm
    # Sie befinden sich jetzt am "at"-Prompt
    at> xmessage "Zeit, aufzubrechen! Verabredung um 18:00"
    # Dr¨ucken Sie Strg-d zum Verlassen
    at> <EOT>
    $
    Die Zeit kann in mehreren Varianten angegeben werden:
    • now + <interval>: jetzt plus dem angegebenen Intervall (Optional. Ohne angegebenes Intervall bedeutet
    es: Jetzt.). Die Syntax für das Interval ist <n> (minuten|stunden|tage|wochen|monate). Sie könnten beispielsweise
    angeben: now + 1 hour (in einer Stunde ab jetzt), now + 3 days (in drei Tagen ab heute), usw.
    • <zeit> <tag>: damit wird der Zeitpunkt genau festgelegt. Die Angabe des Parameters <zeit> ist vorgeschrieben.
    at ist bei der Formatierung sehr liberal: Sie können beispielsweise 0100, 04:20, 2am, 0530pm, 1800
    oder einen von drei festgelegten Zeitpunkten angeben: noon, teatime (16:00) oder midnight. Die Angabe
    des Parameters <tag> hingegen ist optional. Auch diese Angabe kann in verschiedenen Arten erfolgen:
    12/20/2001 (also der 20. Dezember 2001) oder in europäischer Art 20.12.2001. Wenn Sie die Jahresangabe
    weglassen wollen ist nur die europäische Angabe erlaubt: 20.12. Den Monat können Sie auch in Form von
    Buchstaben eingeben: Dec 20 oder 20 Dec sind beide gültig.
    at akzeptiert verschiedene Optionen:
    • -l: gibt eine Liste der aktuell anliegenden Jobs aus, in der das erste Feld die Nummer des Jobs angibt. Das
    ist das Äquivalent zum Befehl atq.
    • -d <n>: entfernt den Job Nummer <n> aus der Warteschlange. Die Jobnummern bekommen Sie mit dem
    Befehl atq. Das ist das Äquivalent zu dem Befehl atrm <n>.
    Wie gewohnt finden Sie weitere Optionen in der manpage von at(1).
    5.4 Archivieren und Datenkomprimierung
    5.4.1 tar: Tape ARchiver
    Wie find ist auch tar eines der älteren UNIX®-Werkzeuge. Dementsprechend „speziell“ ist die Syntax:
    tar [Option(en)] [Datei(en)]
    Hier finden Sie eine Liste mit einigen Optionen. Alle Optionen haben auch eine längere Schreibweise, die Sie
    aber bitte in der man page von tar nachlesen wollen.
    der den kurzen Optionsangaben vorangehende Strich (-) kann bei
    der aktuellen Version von tar weggelassen werden, es sei denn, es
    folgt eine kurze Schreibweise nach einer Langversion.
    • c: erstellt ein neues Archiv.
    • x: extrahiert Dateien aus einem bestehenden Archiv.
    • t: listet die Dateien eines bestehenden Archives auf.
    • v: listet die einem Archiv hinzugefügten oder daraus extrahierten Dateien auf. In Verbindung mit der Option
    t (siehe oben) wird eine lange Liste von Dateien anstelle einer Kurzform ausgegeben.
    48
    Kapitel 5. Kommandozeilenwerkzeuge
    • f <datei_name>: erstellt ein Archiv mit dem Namen datei_name, extrahiert Dateien aus einem Archiv mit
    diesem Namen oder listet die Dateien eines Archivs mit dem Namen file_name auf.Wird dieser Parameter
    weggelassen so wird als Standard /dev/rmt0 angenommen, da dies im Allgemeinen der spezielle Dateiname
    für einen Streamer ist. Ist der Parameter für die Datei ein - (ein Strich) so wird die Ein- oder Ausgabe
    (je nachdem, ob es sich um eine Erstellung eines Archivs oder eine Extrahierung aus einem Archiv handelt)
    auf die Standard-Ein-/Ausgabe geleitet.
    • z: weist tar an, das zu erstellende Archiv mit gzip zu komprimieren. Bei einer Extraktion wird damit
    angegeben, dass das Archiv mit gzip komprimiert wurde.
    • j: bedeutet das Gleiche wie z, nur, dass es sich bei dem Komprimierungsprogramm um bzip2 handelt.
    • p: bei der Extraktion von Dateien aus einem Archiv werden alle Dateiattribute beibehalten (Besitzrechte,
    letzter Zugriff, usw.). Sehr hilfreich bei Sicherungen eines Systems.
    • r: fügt eine auf der Kommandozeile angegebene Liste von Dateien zu einem existierenden Archiv hinzu.
    Beachten Sie hierbei, dass das Archiv, dem Sie die Dateien hinzufügen wollen, nicht komprimiert sein darf!
    • A: fügt auf der Kommandozeile angegebene Archive zu einem mit der Option f erstellten Archiv hinzu.Wie
    bei der Option r dürfen auch hier die Archive nicht komprimiert sein.
    Es gibt eine Unmenge weiterer Optionen, die Sie ihrer Gesamtheit in tar(1) finden können. Schauen Sie sich
    dort beispielsweise die Option d an. Lassen Sie uns mit einem kleinen Beispiel fortfahren. Sie wollen ein Archiv
    erstellen, dass alle Bilder im Verzeichnis /shared/images enthält, mit bzip2 komprimiert ist, den Namen
    images.tar.bz2 trägt und in Ihrem persönlichen Verzeichnis gespeichert wird. Dazu verwenden Sie die folgende
    Befehlszeile:
    #
    # Achtung: Sie m¨ussen sich dazu in dem Verzeichnis befinden, aus dem
    # die zu archivierenden Dateien stammen!
    #
    $ cd /shared
    $ tar cjf ~/images.tar.bz2 images/
    Wie Sie sehen, haben wir hier drei Optionen benutzt: c zur Erstellung des Archivs, j zur Komprimierung mit
    bzip2 und f ~/images.tar.bz2 zur Angabe, dass das Archiv den Namen images.tar.bz2 bekommt und in
    Ihrem persönlichen Verzeichnis abgelegt wird. Nun prüfen wir, ob das Archiv valide ist und lassen uns dazu
    die archivierten Dateien auflisten:
    #
    # Gehen Sie dazu in Ihr pers¨onliches Verzeichnis
    #
    $ cd
    $ tar tjvf images.tar.bz2
    Wir weisen also tar an, die Dateien des Archivs images.tar.bz2 (f images.tar.bz2) aufzulisten (t), teilen
    ihm mit, dass das Archiv mit bzip2 komprimiert wurde (j) und dass wir eine ausführliche Liste sehen wollen
    (v). Angenommen, Sie haben das Verzeichnis mit den Bildern mittlerweile gelöscht. Glücklicherweise ist das
    Archiv in Ordnung und Sie können es wieder an den ursprünglichen Platz (/shared) entpacken. Dabei wollen
    Sie aber die Funktionalität Ihres find-Befehls für neue Bilder nicht durcheinander bringen. Daher müssen Sie
    nun die Option zur Erhaltung aller Dateiattribute benutzen:
    #
    # Wechseln Sie zum Zielverzeichnis
    #
    $ cd /shared
    $ tar jxpf ~/images.tar.bz2
    Das wars!
    Als Nächstes wollen Sie vielleicht das Verzeichnis images/cars aus dem Archiv extrahieren, aber nur dieses
    Verzeichnis, sonst nichts. Dazu geben Sie die folgende Befehlszeile ein:
    $ tar jxf ~/images.tar.bz2 images/cars
    Falls Sie versuchen, spezielle Dateien zu archivieren wird tar die Dateien behandeln, als das, was sie sind
    (spezielle Dateien) und ihren Inhalt nicht sichern. Daher können Sie beispielsweise die Datei /dev/mem in ein
    Archiv einfügen. tar geht auch korrekt mit Links um, also brauchen Sie sich darum ebenfalls keine Sorgen
    machen. Zum Thema „symbolische Links“ sollten Sie sich die Option h im Handbuchauszug ansehen.
    49
    Kapitel 5. Kommandozeilenwerkzeuge
    5.4.2 bzip2 und gzip: Programme zur Datenkompression
    Wir haben diese beiden Programm bereits bei der Behandlung von tar erwähnt. Entgegen der Funktionsweise
    von WinZip® unter Windows® wird das Archivieren und Komprimieren von Daten von zwei verschiedenen
    Programmen erledigt – tar zur Archivierung und die die zwei Programme, über die wir jetzt schreiben, zur
    Datenkompession: bzip2 und gzip. Sie können auch andere Komprimierungs-Programme benutzen: zip, arj
    oder rar existieren auch unter GNU/Linux, werden aber seltener benutzt.
    Am Anfang wurde bzip2 eigentlich als Nachfolger für gzip entwickelt. Seine Kompressionsrate war im Allgemeinen
    besser als bei gzip, dafür braucht es mehr Arbeitsspeicher zur Bearbeitung der Daten. gzip wird
    allerdings aus Kompatibilitätsgründen immer noch oft benutzt.
    Beide Programme haben eine ähnliche Syntax:
    gzip [Option(en)] [Datei(en)]
    Wenn kein Dateiname angegeben wird warten beide Befehle auf Daten von der Standardeingabe und geben
    das Resultat ihrer Verarbeitung an die Standardausgabe aus. Daher können beide Programme auch in Pipes
    benutzt werden. Beide Programme besitzen auch eine Reihe von gemeinsamen Optionen:
    • -1, ..., -9: setzt die Kompressionsrate fest. Je höher die Ziffer, desto stärker die Komprimierung, aber auch
    desto langsamer die Verarbeitung.
    • -d: de-komprimieren von Dateien. Ein Äquivalent zu den Befehlen gunzip oder bunzip2.
    • -c: gibt das Ergebnis der Kompression/Dekompression von als Parameter angegebenen Dateien an die
    Standardausgabe.
    Standardm¨aßig l¨oschen beide Programme ohne die Angabe der Option
    -c die Dateien, die sie komprimiert oder dekomprimiert haben.
    Bei bzip2 k¨onnen Sie das durch die Benutzung der Option -k vermeiden.
    gzip besitzt keine ¨ahnliche Option.
    Es folgen ein paar Beispiele. Nehmen wir an, Sie möchten alle Dateien im aktuellen Verzeichnis mit der Endung
    .txt komprimieren und benutzen dazu bzip2 mit maximaler Kompressionsrate. Dazu geben Sie diesen
    Befehl ein:
    # bzip2 -9 *.txt
    Nun wollen Sie Ihr Bildarchiv jemandem zeigen, der aber anstelle von bzip2 nur gzip benutzen kann. Dazu
    müssen Sie das ganze Archiv nicht entpacken und wieder komprimieren. Entpacken Sie es auf die Standardausgabe,
    nutzen eine Pipe, komprimieren die Daten der Standardeingabe und leiten die Ausgabe in das neue
    Archiv. Und das geht so:
    bzip2 -dc images.tar.bz2 | gzip -9 >images.tar.gz
    Sie könnten auch bzcat anstelle von bzip2 -dc nehmen. Es gibt ein Äquivalent für gzip, der Name ist aber
    zcat, nicht gzcat. Sie können auch bzless statt bzip2 Datei und zless statt gzip verwenden, falls Sie die
    komprimierten Dateien direkt ansehen wollen anstatt sie erst zu dekomprimieren. Als Übung sollten Sie jetzt
    den Befehl finden, mit dem Sie – ohne bzless oder zless zu benutzen – komprimierte Dateien direkt ansehen
    können, ohne sie vorher zu entpacken.
    5.5 Viel, viel mehr...
    Es gibt derartig viele Befehle, dass ein umfassendes Buch darüber die Größe einer Enzyklopädie erreichen
    würde. Dieser Abschnitt hat nicht einmal ein Zehntel des gewählten Themas behandelt, trotzdem können Sie
    mit dem, was Sie hier gelernt haben, schon Einiges anfangen.Wenn Sie daran interessiert sind, sollten Sie sich
    einige Handbuchauszüge ansehen: sort(1), sed(1) und zip(1) (ja, genau das, was Sie annehmen: Sie können
    unter GNU/Linux auch .zip-Archive anlegen), convert(1), usw. Die beste Art, sich mit diesen Werkzeugen
    vertraut zu machen ist ständiges Üben und Experimentieren. Sie werden sicher eine Menge Möglichkeiten
    dazu finden, sogar einige unerwartete. Viel Spaß!

    das befand sich in meiner zwischenablage^^
    @noss: du hast es anscheinend so gewollt



    Re: STRG+V

    nossinger - 11.04.2007, 22:23


    aaaaaaahja :D

    meine zwischenablage :D:

    www.nix-pop.dl.am



    Re: STRG+V

    L!edL - 12.04.2007, 12:35


    meine is leer =(



    Re: STRG+V

    nossinger - 12.04.2007, 13:36


    Ein Mädchen und ein Junge dachten sich mal bei dem schönen Wetter mit dem Motorrad zu fahren.
    Jedoch hatten sie nur einen Helm dabei, doch es war ihnen egal und sie fuhren los. Sie genossen es den
    sanften Wind auf der Haut zu spüren und einfach diesen gemeinsamen Moment zu genießen. Nach einiger Zeit
    fiel dem Mädchen auf, dass der Junge immer schneller fuhr...
    Sie schaute auf den Tacho und sah, dass es mittlerweile schon 180 km/h waren. Deshalb bat sie den Jungen langsamer zu fahren, weil sie Angst hatte.
    Der Junge sagte *Umarme mich und sage, dass du mich liebst!*
    Das Mädchen antwortete *Ich liebe dich über alles, mein Schatz, aber fahre jetzt bitte langsamer...*
    Der Junge sagte darauf nur *Nimm erstmal meinen Helm und setze ihn bitte auf, bitte!*
    Einen Tag später steht in der Zeitung:
    UNFALL
    Zwei Jugendliche fuhren mit 180km/h auf ein Haus zu. Nur einer überlebte.
    ERKLÄRUNG
    Nur das Mädchen hat überlebt. Dem Junge wurde beim Fahren bewusst, dass die Bremsen nicht mehr
    funktionierten, dass das Gaspedal hängen geblieben ist und sie nicht mehr langsamer fahren können.
    Deswegen hat der Junge dem Mädchen seinen Helm gegeben und gesagt sie soll ihn umarmen
    und I LOVE YOU SAGEN!!!



    Re: STRG+V

    pflaume - 13.04.2007, 00:16


    Asus V9999GT



    Re: STRG+V

    gietschess - 13.04.2007, 11:21


    172.24.7.66

    tolle ip. :D


    [ DER NOSS KLAUT SPAM-THREADS AUS ANDEREN FOREN! :D ]



    Re: STRG+V

    L!edL - 13.04.2007, 11:36


    für schönheit un weisheit un sexyheit


    [NOSS DU DIEB :!: :lol: ]



    Re: STRG+V

    gietschess - 13.04.2007, 17:19


    willst du mit mir gehn???

    [ ] ja

    [ ] nein

    [ ] vielleicht



    Re: STRG+V

    L!edL - 13.04.2007, 18:13


    http://10erforum.de.ki/



    Re: STRG+V

    pflaume - 13.04.2007, 22:01


    Sturmwehr



    Re: STRG+V

    nossinger - 14.04.2007, 14:05


    gietschess hat folgendes geschrieben: 172.24.7.66

    tolle ip. :D


    [ DER NOSS KLAUT SPAM-THREADS AUS ANDEREN FOREN! :D ]


    ja und :roll: ? :>



    Re: STRG+V

    Juliaaan - 14.04.2007, 18:21


    http://addons.miranda-im.org/feed.php?dlfile=2103



    Re: STRG+V

    L!edL - 15.04.2007, 13:38


    http://10erforum.de.ki/



    Re: STRG+V

    L!edL - 15.04.2007, 18:15


    Pimp! Code - Wicked Body Moves



    Re: STRG+V

    L!edL - 16.04.2007, 20:20


    Madsen - Die Perfektion



    Re: STRG+V

    L!edL - 18.04.2007, 14:42


    Bloodhound Gang - The Vagina Song



    Re: STRG+V

    L!edL - 18.04.2007, 17:00


    7CH45-89I1P-Z89NE-902D8-3Q84F

    nero serial :wink:



    Re: STRG+V

    Tim - 18.04.2007, 17:57


    Tim (17:55:00 18/04/2007)



    Re: STRG+V

    Juliaaan - 18.04.2007, 21:34


    http://xeem.to/prsgRuRsJj



    Re: STRG+V

    fL0r!4N - 23.05.2007, 16:21


    http://www.bilder-speicher.de/07052316575603.vollbild.html



    Re: STRG+V

    gietschess - 23.05.2007, 18:39


    BEST-CARD15



    Re: STRG+V

    Wilhelm von Nassau - 31.05.2007, 22:07




    Mit folgendem Code, können Sie den Beitrag ganz bequem auf ihrer Homepage verlinken



    Weitere Beiträge aus dem Forum 10er Forum RS Rennerod

    ffg4ming - gepostet von PuN!C4 am Sonntag 25.02.2007
    In welchem Forum darf ich was posten? - gepostet von fL0r!4N am Freitag 07.09.2007
    Das Aus für unsere Gäste! - gepostet von fL0r!4N am Donnerstag 24.05.2007
    1. Mai - gepostet von fL0r!4N am Montag 12.03.2007



    Ähnliche Beiträge wie "STRG+V"

    Strg + V ... - myratess (Donnerstag 20.04.2006)
    Für die neuen - darknes (Montag 19.01.2009)
    Welche nette Frau begeleitet mich am Mittwoch in den Club? - knuffi39 (Montag 01.08.2011)
    Strg - V - Zorngiebel (Montag 27.03.2006)
    Strg+V - Thread - Che_Guevara (Donnerstag 09.02.2006)
    Strg+V - specoperator (Samstag 05.05.2007)
    [Konzert-Tipp] Maximo Park - Thomas (Montag 19.01.2009)
    STRG+UNTBR ? - alesch (Samstag 12.08.2006)
    das strg+v spiel :-D - oszy112 (Mittwoch 30.01.2008)
    "Strg+V" ~ Was kopierst du? - ~Resü~ (Mittwoch 15.11.2006)