Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Arbeiten mit 'grep' (https://www.delphipraxis.net/27912-arbeiten-mit-grep.html)

Blutiger Anfänger 23. Aug 2004 13:47

Re: Arbeiten mit 'grep'
 
grep -P "\s*1" /etc/....

??? Geht das ???

fiasko 23. Aug 2004 13:52

Re: Arbeiten mit 'grep'
 
Zitat:

Zitat von Blutiger Anfänger
grep -P "\s*1" /etc/....

??? Geht das ???

Nee, wenn dann "\\s1" - grep macht aber keine Perl RegExs.


@barnti:

dann nimm mal statt grep "egrep" bzw. "grep -E" um erweiterte Regexs einzuschalten.

barnti 23. Aug 2004 13:57

Re: Arbeiten mit 'grep'
 
Hi,
damit hatte ich auch noch keinen Erfolg...Selbe Fehlermeldungen, selbe Ergebnisse...

Blutiger Anfänger 23. Aug 2004 14:04

Re: Arbeiten mit 'grep'
 
Andere Idee. Mit den meisten Perl-Distros kommt ein Beispiel welches GREP in Perl implementiert. Bzw du kannst das IMO auch im Web finden. Du kannst dann die normale Perl-RegEx benutzen. Und damit kenne ich mich besser aus :-D - könnte also auch besser helfen.

Das schlimme an den RegExes ist ja, daß es so viele verschiedene Geschmacksrichtungen gibt.

Ich guck mal, so'n Perskript mit GREP-Fähigkeiten ist popelig kurz und kann dennoch die Zeilen ausgeben (wenn vielleicht auch nicht alle GREP-Modi nachvollziehen).

barnti 23. Aug 2004 14:05

Re: Arbeiten mit 'grep'
 
Na,
ich werde mal weiter versuchen. Es muss ja irgendwie gehen...

Blutiger Anfänger 23. Aug 2004 14:27

Re: Arbeiten mit 'grep'
 
Willst du vielleicht das?:

Code:
grep "[[:space:]]1\/" /etc/services
... du willst doch "nur" den Dienst an Port 1. Also mußt du so eingrenzen:

[Space/Tab] [Eins] [Forward Slash]

Wahlweise ginge auch:
Code:
grep "[[:space:]]1\/tcp" /etc/services
um nur den TCP-Port zu bekommen.

Funzt auf einem Mandrake-System ohne Probleme.

Nachtrag: Das ist, wohlgemerkt, nur die modifizierte Variante von Thomas' (fiasko) Vorschlag.

fiasko 23. Aug 2004 16:39

Re: Arbeiten mit 'grep'
 
Sein Problem ist ja das sein grep den Regex nicht frißt.

Also wenn er nur den Service Namen haben will gibt es ja extra die libc-Calls getservbyname und getservbyport. Wenn man nicht extra ein C-Proggy schreiben will tut es auch folgendes:

Code:
thomas@server:~$ perl -e 'print scalar getservbyname("ssh","tcp"),"\n";'
22
thomas@server:~$ perl -e 'print scalar getservbyport(22,'tcp'),"\n";'
ssh


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:14 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz