Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: Linux Forum Linux-Web.de. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

Elessar

Aran Gondor

  • »Elessar« ist männlich
  • »Elessar« ist der Autor dieses Themas

Beiträge: 105

Wohnort: Köln

Beruf: Schüler...

  • Nachricht senden

41

22.01.2007, 12:55

Hab ich schon ausprobiert, der macht das irgendwie nicht....

Elessar

Aran Gondor

  • »Elessar« ist männlich
  • »Elessar« ist der Autor dieses Themas

Beiträge: 105

Wohnort: Köln

Beruf: Schüler...

  • Nachricht senden

42

22.01.2007, 13:22

EDIT: Aber das größere Problem ist eh immoment die Sache, dass wenn ich flitere er den ganzen Rest mit abschneidet...

bonsai

Prof.Dr. Klugschiss

  • »bonsai« ist männlich

Beiträge: 1 486

Wohnort: N.de

Beruf: Informatiker

  • Nachricht senden

43

22.01.2007, 13:42

Das Ganze Problem bitte?

Der Source sieht ja fuerchterlich aus.... ...schick doch mal einen Auszug aus der Datei, die Du filtern moechtest und welche Informationen wie danach angezeigt werden sollen.
Die erste programmgesteuerte Rechenmaschine (Z1) wurde Mitte der 30er Jahre als "nicht patentwürdig" eingestuft. Warum versaut mir das Ding 50 Jahre später immer noch den Tag?

Elessar

Aran Gondor

  • »Elessar« ist männlich
  • »Elessar« ist der Autor dieses Themas

Beiträge: 105

Wohnort: Köln

Beruf: Schüler...

  • Nachricht senden

44

22.01.2007, 13:52

Extended IP access list Routername1
10 permit ip any xx.xx.xx.xxx x.x.x.x (1141616 matches)
Extended IP access list Routername2
10 permit ip any xx.xx.xxx.x x.x.x.xxx
Extended IP access list Routername3
10 permit ip any xx.xx.xxx.x x.x.x.xxx (5803520 matches)


So ich möchte jetzt aber nur die Routernamen und die Matches dort stehen haben in der Ausgabe...

Die Source war nur ein entwurf...

bonsai

Prof.Dr. Klugschiss

  • »bonsai« ist männlich

Beiträge: 1 486

Wohnort: N.de

Beruf: Informatiker

  • Nachricht senden

45

22.01.2007, 14:10

#!/usr/bin/perl

open FH,"<meineDatei" or die "Kann Datei nicht oeffnen";
@MyArray=<FH>;
close FH;
$counter=0;
foreach $line(@MyArray) {
$counter++;
if ($line =~ m/.*permit ip any\s+(\S+)\s+\(\d+\s+matches\)\s+$/) {
print "$1\t$2\n";
} else {
print "Interpretieren der Zeile fehlgeschlagen";
}
}

print "Datei ist leer!\n" if $counter==0;

Sollte gehen...
Die erste programmgesteuerte Rechenmaschine (Z1) wurde Mitte der 30er Jahre als "nicht patentwürdig" eingestuft. Warum versaut mir das Ding 50 Jahre später immer noch den Tag?

Elessar

Aran Gondor

  • »Elessar« ist männlich
  • »Elessar« ist der Autor dieses Themas

Beiträge: 105

Wohnort: Köln

Beruf: Schüler...

  • Nachricht senden

46

22.01.2007, 15:45

Danke, aber hat leider nicht funktioniert... Gibt ausschließlich "Interpretieren der Zeile fehlgeschlagen" aus....

bonsai

Prof.Dr. Klugschiss

  • »bonsai« ist männlich

Beiträge: 1 486

Wohnort: N.de

Beruf: Informatiker

  • Nachricht senden

47

22.01.2007, 18:53

Dann musst Du die Zeile hier:

if ($line =~ m/.*permit ip any\s+(\S+)\s+\(\d+\s+matches\)\s+$/) {

ein bisschen anpassen. Suchbegriffe: Perl Regular Expressions.

/bernd
Die erste programmgesteuerte Rechenmaschine (Z1) wurde Mitte der 30er Jahre als "nicht patentwürdig" eingestuft. Warum versaut mir das Ding 50 Jahre später immer noch den Tag?

bonsai

Prof.Dr. Klugschiss

  • »bonsai« ist männlich

Beiträge: 1 486

Wohnort: N.de

Beruf: Informatiker

  • Nachricht senden

48

22.01.2007, 19:11

....so z.B...

if ($line =~ m/permit ip any\s+(\S+)\s+\S+\s+\S(.+ )matches\S\s+/) {
Die erste programmgesteuerte Rechenmaschine (Z1) wurde Mitte der 30er Jahre als "nicht patentwürdig" eingestuft. Warum versaut mir das Ding 50 Jahre später immer noch den Tag?

Elessar

Aran Gondor

  • »Elessar« ist männlich
  • »Elessar« ist der Autor dieses Themas

Beiträge: 105

Wohnort: Köln

Beruf: Schüler...

  • Nachricht senden

49

22.01.2007, 21:10

OK, danke, kann aber erst morgen wieder dran arbeiten... Ich werd mal probieren....


Gruß

Philipp

Elessar

Aran Gondor

  • »Elessar« ist männlich
  • »Elessar« ist der Autor dieses Themas

Beiträge: 105

Wohnort: Köln

Beruf: Schüler...

  • Nachricht senden

50

25.01.2007, 11:12

und nochn Problem ^^

Hallo,

ich hab ein Problem mit Zeilenumbrüchen.

Ich möchte ja nun die Routernamen und die dazugehörigen Matches ausgeben lassen. Aber beides in einer Zeile, wenn ich aber jetzt die Variable mit den Routernamen ausgeben lasse, wir automatisch ein Linefeed eingefügt, de ja logischerweise in der Variable stehen muss. Wenn ich aber dann chomp mache für die Variable ist der Linefeed zwar weg und er gibt "Router: xxxxx Matches:" aus, aber halt ohne die Matches auszugeben, die lässt er einfach raus. Gibt es noch eine Möglichkeit das Linefeed zu filtern?

Gruß

Philipp

bonsai

Prof.Dr. Klugschiss

  • »bonsai« ist männlich

Beiträge: 1 486

Wohnort: N.de

Beruf: Informatiker

  • Nachricht senden

51

25.01.2007, 11:37

Schicke mal Deinen Source

-..
Die erste programmgesteuerte Rechenmaschine (Z1) wurde Mitte der 30er Jahre als "nicht patentwürdig" eingestuft. Warum versaut mir das Ding 50 Jahre später immer noch den Tag?

Elessar

Aran Gondor

  • »Elessar« ist männlich
  • »Elessar« ist der Autor dieses Themas

Beiträge: 105

Wohnort: Köln

Beruf: Schüler...

  • Nachricht senden

52

25.01.2007, 11:43

So, ich denke die Ausgabeschleife reicht.

Quellcode

1
2
3
4
5
6
7
8
print "\n\nRouter-Match Zuordnung\n";
do
{
#$ausgabe[$b]=~ s/\n//g;
#chomp $ausgabe[$b]; 
print "Router: "; print $ausgabe[$b]; print "Matches: $ausgabe[$b][0]\n\n";
$b++;
} until ($b==$zeilen+1);



Habe also einmal mit dem "Suchen-ersetzen"-Befehl gearbeitet, das hat nich geklappt und einmal mit chomp;.

Hab jetzt beides mal auskommentiert.

habe auch schon mit verschiedenen print-variationen gearbeitet (die Zeile sieht deswegen auch so ein bisschen komisch aus, aber auch nichts.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Elessar« (25.01.2007, 11:44)


Elessar

Aran Gondor

  • »Elessar« ist männlich
  • »Elessar« ist der Autor dieses Themas

Beiträge: 105

Wohnort: Köln

Beruf: Schüler...

  • Nachricht senden

53

25.01.2007, 12:04

Danke, Problem hat sich erledigt, ich musste den Filterbefehl nur weiter oben schreiben. Der hatte wohl ein Problem damit bei dem Array...


Gruß

Philipp

bonsai

Prof.Dr. Klugschiss

  • »bonsai« ist männlich

Beiträge: 1 486

Wohnort: N.de

Beruf: Informatiker

  • Nachricht senden

54

25.01.2007, 12:15

Zitat

Der hatte wohl ein Problem damit bei dem Array...


Du brauchst doch kein Array - oder willst Du in dem Programm spaeter noch drauf zugreifen? (Is doch Speicherverschwendung! ;))
Die erste programmgesteuerte Rechenmaschine (Z1) wurde Mitte der 30er Jahre als "nicht patentwürdig" eingestuft. Warum versaut mir das Ding 50 Jahre später immer noch den Tag?

Thema bewerten