Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Problem mit system(grep) und suche

Frage Entwicklung Perl

Mitglied: samsx87

samsx87 (Level 1) - Jetzt verbinden

04.12.2007, aktualisiert 05.12.2007, 5007 Aufrufe, 4 Kommentare

Hallo Zusammen

Ich habe folgendes Problem:

Ich möchte einen Dateinamen beim Aufruf eines Perl Scriptes an das script übergeben:

perl scriptname.pl test.msg

Danach sollte das Script die angebene Datei mittels grep durchsuchen:

system("grep Received:",$ARGV[0]," > test.txt");

Das Problem ist nun, dass er zwar die Datei test.txt erstellt, diese aber leer lässt. Wenn ich den Befehl von Hand ausführe Funktioniert es (grep Received: test.msg > test.txt). Wo liegt der Fehler?

Mein zweites Problem ist, dass ich einen string nach einer IP-Addresse durchsuchen und diese dann als Variable abspeichern möchte:

Beispiel:
$test = "Received: from 12.123.234.2 (HELO host.name.com)"

if ($test =~ m/[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+/) {
$ipaddress = $_;
}

Das funktioniert jedoch nicht wirklich

Für eure Hilfe bedanke ich mich bereits im voraus!

mfG
Mitglied: runlevel2
04.12.2007 um 19:23 Uhr
Hy,

schau mal, ob das bei Dir so funktioniert, wie Du es brauchst:

01.
#!/usr/bin/perl -w 
02.
 
03.
system "grep Received: $ARGV[0] > test.txt"; 
04.
 
05.
$test = "Received: from 12.123.234.2 (HELO host.name.com)"; 
06.
 
07.
if ($test =~ m/[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+/) { 
08.
   my $ipaddress = $test; 
09.
   print "$ipaddress\n"; 
10.
}
Aufruf: scriptname.pl test.msg

Gruss, runlevel2
Bitte warten ..
Mitglied: samsx87
04.12.2007 um 20:04 Uhr
Hallo!

Danke für Deine Antwort!

system "grep Received: $ARGV[0] > test.txt"; <- Funktioniert! Vielen Dank!

Der Zweite Teil klappt jedoch nicht. Er gibt mir "Received: from 12.123.234.2 (HELO host.name.com)" zurück anstatt nur die IP-Adresse. Hast du noch eine andere Idee?


mfG
Bitte warten ..
Mitglied: runlevel2
05.12.2007 um 09:11 Uhr
Hy nochmal,

das mußt Du dann klammern im regulären Ausdruck. Zugreifen kannst Du im Beispiel über die Variable $1:

01.
if ($test =~ m/([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)/) { 
02.
        my $ipaddress = $1; 
03.
        print "$ipaddress\n"; 
04.
}
Müßte passen.

Siehe auch: http://perl-seiten.homepage.t-online.de/html/perl_suche2.html#abs3


Gruss, runlevel2
Bitte warten ..
Mitglied: samsx87
05.12.2007 um 14:55 Uhr
aaaaaaa Danke vielmals! Funktioniert!

mfG
Bitte warten ..
Ähnliche Inhalte
Webbrowser
DNS Problem in Browsern - Suche in Adresszeile (6)

Frage von tobivan zum Thema Webbrowser ...

Hosting & Housing
Problem mit: Reverse DNS Resolution - PTR Record (2)

Frage von Krabbat zum Thema Hosting & Housing ...

Off Topic
Suche alle Kombinationen aus 2 und 3 Buchstaben (39)

Frage von Snowboarder1994 zum Thema Off Topic ...

Neue Wissensbeiträge
Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(29)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Humor (lol)

Bester Vorschlag eines Supporttechnikers ever: APC

(15)

Erfahrungsbericht von DerWoWusste zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Netzwerke
LAN2LAN Verbindung sehr langsam flaschenhals gesucht (27)

Frage von PixL86 zum Thema Netzwerke ...

LAN, WAN, Wireless
Rogue Access Point (20)

Frage von Axel90 zum Thema LAN, WAN, Wireless ...

E-Mail
Fake E-Mail in Outlook für Demonstartionszwecke (12)

Frage von sascha382 zum Thema E-Mail ...

Linux Netzwerk
gelöst Debian Neuinstallation 2.Netzwerkkarte keine Verbindung (10)

Frage von terminator zum Thema Linux Netzwerk ...