textblock suche in log file

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von regatus, 23.08.2007.

  1. #1 regatus, 23.08.2007
    regatus

    regatus Grünschnabel

    Dabei seit:
    09.06.2005
    Beiträge:
    5
    Zustimmungen:
    0
    hallo.

    wie kann ich in einem log file nach einem mehrzeiligem textblock suchen? der textblock muss exakt vorkommen.

    in dem log file stehen hunderte messages und er soll eben 10-20 messages finden, die direkt nacheinander stehen.

    das tool/script sollte in bash integrierbar sein.

    habt ihr ne ahnung, wie ich sowas machen kann?

    mfg
    andreas
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 Fallout, 23.08.2007
    Fallout

    Fallout Doppel-As

    Dabei seit:
    02.03.2007
    Beiträge:
    120
    Zustimmungen:
    0
    Hi,

    mit Hilfe von Werkzeugen wie sed, awk und grep lassen sich in Zusammenhang mit entsprechenden regulären Ausdrücken sehr umfangreiche Suchmuster erstellen. Diese können u. v. a. auch das Steuerzeichen für eine neue Zeile unter UNIX beinhalten: \n.

    Gruß Daniel
     
  4. #3 regatus, 23.08.2007
    regatus

    regatus Grünschnabel

    Dabei seit:
    09.06.2005
    Beiträge:
    5
    Zustimmungen:
    0
    das habe ich schon probiert, aber das problem ist, dass grep nur zeile für zeile sucht und kein textblock der über mehrere zeilen geht.
     
  5. #4 P3AC3MAK3R, 23.08.2007
    P3AC3MAK3R

    P3AC3MAK3R Eroberer

    Dabei seit:
    20.07.2007
    Beiträge:
    59
    Zustimmungen:
    0
    Ort:
    NRW
    Ich habe folgenden Thread zu einem ähnlichen Thema gefunden. Vielleicht hilft Dir der weiter:
    http://www.linux-community.de/Neues/story?storyid=21583

    Die Kernaussage ist dort, daß man für die Lösung Deines Problems anscheinend eine Skriptsprache wie Perl einsetzen muß.
     
  6. #5 x0r, 23.08.2007
    Zuletzt bearbeitet: 23.08.2007
    x0r

    x0r Bitschubser

    Dabei seit:
    20.12.2005
    Beiträge:
    169
    Zustimmungen:
    0
    Ort:
    Berlin
    Mahltid,


    Öhem ...

    1: er will ja grunsätzlich erst mal nur den Block finden, manipulieren will er ihn anscheinend nicht
    2: PERL skripten (abgesehen davon, dass er es noch erst lernen müsste ...) um einen Zeichenkettenvergleich zu bewerkstelligen ??

    Was empfiehlst Du ihm, wenn er mal mehrere Dateien auf einmal umbenennen möchte, C++ zu lernen ??

    Fallout hats bereits gesagt:
    Nun, zum Geschäft:

    Blockweises suchen via AWK:

    Code:
    awk /^erstes_Wort_Blockbeginn/,/^erstes_Wort_Blockende/ /pfad/zu/deiner/logdatei
    
    ... pipen geht natürlich auch ...

    Code:
     ifconfig | awk /^en0/,/^en1/
    
    ...letzteres erzeugt solcherlei Ausgaben:

    Code:
    dx0r-DarwinOSX:~ dx0r$ ifconfig | awk /^en0/,/^en1/
    en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
            tunnel inet  --> 
            inet6 fe80::217:f2ff:fe2e:13e8%en0 prefixlen 64 scopeid 0x4 
            inet 192.168.0.250 netmask 0xffffff00 broadcast 192.168.0.255
            ether 00:17:f2:2e:13:e8 
            media: autoselect (100baseTX <full-duplex>) status: active
            supported media: autoselect 10baseT/UTP <half-duplex> 10baseT/UTP <full-duplex> 10baseT/UTP <full-duplex,hw-loopback> 10baseT/UTP <full-duplex,flow-control> 100baseTX <half-duplex> 100baseTX <full-duplex> 100baseTX <full-duplex,hw-loopback> 100baseTX <full-duplex,flow-control> 1000baseT <full-duplex> 1000baseT <full-duplex,hw-loopback> 1000baseT <full-duplex,flow-control> none
            vlan: 0 parent interface: <none>
            bond interfaces: <none>
    en1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    
    
    MfG


    EDIT: pardon, Links jibbet natürlisch auch:

    http://www.linuxsource.de/awk.html ---> dt., Anfänger geeignet
    http://www.vectorsite.net/tsawk.html ---> en., Anfänger/Fortgeschr.
     
  7. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  8. #6 Fallout, 23.08.2007
    Fallout

    Fallout Doppel-As

    Dabei seit:
    02.03.2007
    Beiträge:
    120
    Zustimmungen:
    0
    Code:
    server:~ # cat text
    Hier steht ein Text,
    welcher zum
    Testen von sed und regulaeren
    Ausdruecken
    dienen soll.
    
    server:~ # sed -n 'N; s/\(.*regulaeren\nAus.*\)/\1/p' text
    Testen von grep und regulaeren
    Ausdruecken
    Gruß Daniel
     
  9. smg

    smg Regex Fetischist

    Dabei seit:
    20.05.2007
    Beiträge:
    195
    Zustimmungen:
    0
    Ort:
    /home/stephan/
    Code:
    sed -n '/^anfang_block/,/^ende_block/p' $FILE
     
Thema:

textblock suche in log file

Die Seite wird geladen...

textblock suche in log file - Ähnliche Themen

  1. Gezielten Teil eines Textblocks ändern

    Gezielten Teil eines Textblocks ändern: Hi, ich meine hier mal etwas ähnliches gesehen zu haben aber kann leider nix passendes finden. Es geht darum, die Mountoptionen eines bestimmten...
  2. Suche in Datei doppelte Wörter in jeder Zeile bis zum dritten Leerzeichen...

    Suche in Datei doppelte Wörter in jeder Zeile bis zum dritten Leerzeichen...: Ich habe eine Textdatei in der ich Einträge bis zum 3. Leerzeichen mit den restlichen Zeilen (auch nur bis 3. Leerzeichen) vergleichen muss und...
  3. Shell-Skript Datum in einer Datai suchen

    Shell-Skript Datum in einer Datai suchen: Hallo zusammen Ich komm eigentlich aus der Klicki-Bunti-Welt von Windows. Seit geraumer Zeit versuche ich meine Künste mit verschiedenen...
  4. [Gelöst] Suchen und ersetzen mit Hilfe mehrerer Parameter

    [Gelöst] Suchen und ersetzen mit Hilfe mehrerer Parameter: Hallo zusammen, ich bin an einem Punkt angekommen, wo ich nicht mehr weiter komme und hoffe ihr könnt mir weiter helfen. Anbei ein Ausschnitt aus...
  5. Funktionssuche in C: Emacs oder Vim?

    Funktionssuche in C: Emacs oder Vim?: Hallo, ich muss mir häufig C-Projekte angucken, und dann suche ich bspw., wo eine aufgerufene Funkion definiert oder deklariert (Header) wird....