Go Back   Die UNIX-und Linux-Foren > Top Foren > Shell Programmierung und Scripting
.
Google-Website



Shell Programmierung und Scripting Post Fragen zu ksh, csh, sh, bash, Perl, PHP, sed, awk und anderen Shell-Skripte und Shell-Scripting-Sprachen hier.

Closed Thread
English Japanese Spanish French German Portuguese Italian Powered by Powered by Google
 
Thread Tools Suche diesen Thread Rate Thread Anzeige-Modi
  #1 (permalink)  
Old 05-23-2006
Registrierte Nutzer
 

Registriert seit: Mai 2006
Beiträge: 7
Wählen Sie die Spiele zwischen Zeilennummer und das Ende der Datei?

Hi Guys / Gals,

Ich habe eine Log-Datei, die aktualisiert wird, wenn alle paar Sekunden, und ich bin auf der Suche nach einem Weg, um eines meiner Skripte.

Im Grunde, was ich zu tun versuchen, ist grep in einer Textdatei von Anfang bis Ende einmal. Dann jede weitere grep beginnt an der letzten Zeile der vorangegangenen grep an das Ende der Datei.

Die Log-Datei können Sie so groß wie 200 MB und nicht dann durch die Datei starten, um jedes Mal, ich will zu können, haben die zweite grep starten, in dem die letzte grep fertig, Reduzierung der Bearbeitungszeit.

Ich habe versucht zu verwenden Schwanz zu greifen, die letzten x Höhe der Zeilen in der Datei, die ist viel schneller, aber das Problem ist die Datei immer wieder aktualisiert, so dass die letzten 100 Zeilen gilt nur für etwa 3 Sekunden, bis eine neue Zeile angehängt wird der Log-Datei.

Gibt es einen Befehl aus, um 100101 zu Schwanz Linie end_of_file?

Habe ich konnte ich feststellen, die letzte Zeile, indem Sie etwas davon
cat-n logfile.txt | tail-n1 | gawk "(print $ 1)"> lastline.txt

Wenn jemand hat einen Vorschlag, wie dies zu erreichen, bitte teilen Sie Ihre Meinung.

Danke

Jerrad
Sponsored Links
  #2 (permalink)  
Old 05-23-2006
System Shock's Avatar
Registrierte Nutzer
 

Registriert seit: Mai 2006
Ort: Tau Ceti V
Beiträge: 528
Wow. 200MB? Das ist eine große Text-Datei. Ich persönlich würde zunächst drehen, dass an ein mehr überschaubare Größe zuerst.

... Sie könnten der Schwanz mit dem Befehl + Operand ..
... damit Sie nicht so etwas wie diese (nicht vollständige Code, aber Sie bekommen die Idee):


Code:
 # cat logfile | wc -l  >> marker.txt  ## where marker has the number of lines in
                                     ## your logilfe at the end of  your script

... dann. nächsten Mal, wenn Sie Ihr Skript ausführen:

Code:
# COUNT=$(cat marker)
let MARKER=${COUNT}+1
#  tail +$(MARKER} logfile

... und Sie nur die Zeilen in der Log-Datei angehängt, die nach dem letzten Mal, wenn Sie geprüft.

Ich würde noch empfehlen, dass Sie drehen Protokolldatei häufiger zuerst. Es ist einfacher und schneller zu arbeiten mit geschlossenen, kleinere Dateien.

... kleines Beispiel der Differenz zwischen Schwanz-und Schwanz n + n:
.., Sie haben eine Datei:

Code:
# cat file
111111111111
2222222222222
33333333333333
44444444444444
555555555555555
666666666666666
777777777777777
88888888888888
999999999999999
aaaaaaaaaaaaa
bbbbbbbbbbbbb
ccccccccccccc

#tail -5 file 
88888888888888
999999999999999
aaaaaaaaaaaaa
bbbbbbbbbbbbb
ccccccccccccc

# tail +5 file
555555555555555
666666666666666
777777777777777
88888888888888
999999999999999
aaaaaaaaaaaaa
bbbbbbbbbbbbb
ccccccccccccc


Zuletzt bearbeitet von System Shock, 05-23-2006 auf 08:25 PM..
  #3 (permalink)  
Old 05-23-2006
reborg's Avatar
reborg reborg is offline Forum Staff  
Administrator
 

Join Date: März 2005
Ort: Irland
Posts: 4361

Code:
sed -n '100101,$p'

  #4 (permalink)  
Old 05-24-2006
yogesh_powar's Avatar
Registrierte Nutzer
 

Join Date: Jun 2005
Lage: Satara
Beiträge: 37
Was passiert, wenn

Ich will den Druck von der x-te der zweiten Zeile die letzte Zeile?
ist, dass $ p in sed wird kurz vor dem 1..
ja, wie ist die Syntax?
  #5 (permalink)  
Old 05-24-2006
Registrierte Nutzer
 

Join Date: Jan 2006
Beiträge: 43
Warum können Sie nicht verwenden, was davon.

tail-f name_of_your_file | grep 'Text, den Sie suchen möchten, "
Sponsored Links
Closed Thread

Lesezeichen

Thread Tools Suche diesen Thread
Suche diesen Thread:

Erweiterte Suche
Anzeige-Modi Rate this thread
Rate this thread:

Forumregeln
Du möglicherweise nicht neue Themen
Du möglicherweise nicht nach Antworten
Du möglicherweise nicht post-Anlagen
Du möglicherweise nicht bearbeiten Sie Ihre Beiträge

BB-Code ist Auf
Smilies sind Auf
[IMG] Code Auf
HTML-Code ist Aus
Trackbacks sind Auf
Pingbacks sind Auf
Refbacks sind Aus


Mehr UNIX-und Linux-Forum Themen Vielleicht finden Sie hilfreiche
Faden Thread Starter Forum Antworten Last Post
Extrahieren Sie eine Zeile aus einer Datei mit der Zeilennummer Zambo Shell Programmierung und Scripting 1 05-01-2008 02:39 PM
Anhängend die Zeilennummer und ein seperator zu jeder Zeile der Datei? pjcwhite Shell Programmierung und Scripting 4 03-21-2007 01:29 AM
So wählen Sie Zeilen in Unix entspricht einem Muster an einer bestimmten Position cs_banda UNIX for Dummies Questions & Answers 2 10-06-2006 04:28 PM
Holen Sie sich online Formular Datei Zeilennummer Corny Shell Programmierung und Scripting 3 08-25-2006 01:18 PM
awk, um eine Spalte aus bestimmten Zeilennummer mab_arif16 Shell Programmierung und Scripting 4 05-08-2006 06:26 AM



Alle Zeiten sind GMT -4. Es ist jetzt 08:33 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Ltd. Sprachliche Übersetzungen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
Die UNIX-und Linux-Foren Inhalt-Copyright © 1993-2010. Alle Rechte Reserved.Ad Management by RedTyger

Content Relevant URLs durch vBSEO 3.2.0