Schrift
[thread]11753[/thread]

[shell programmierung] sed

Leser: 1


<< |< 1 2 >| >> 11 Einträge, 2 Seiten
Gast Gast
 2008-05-05 19:39
#109218 #109218
Hallo Leute,

ich hab leider ein Problem mit sed. :(
Und zwar habe ich folgende Daten:

Code: (dl )
1
2
3
4
5
6
7
0.0.0.0:706
0.0.0.0:111
127.0.0.1:631
127.0.0.1:25
:::22
::1:631
::1:25


Ich will immer alles nach dem Doppelpunkt haben.
Also:

706
111
631
25
22
631
25

Kann ich das mit sed machen?
Wenn ja, wie ginge das?

Vielen Dank!

rperl
pq
 2008-05-05 19:58
#109219 #109219
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
Code: (dl )
sed 's/.*://'

übrigens hast du in manchen zeilen mehrere doppelpunkte, es wäre also genauer
spezifiziert mit "alles nach dem letzten doppelpunkt".
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
Gast Gast
 2008-05-06 17:03
#109274 #109274
danke pq. hast mich wieder mal gerettet :-)
ich werde mich mal revanchieren!

gruss
rperl
Duff
 2008-08-15 17:02
#113544 #113544
User since
2006-10-06
283 Artikel
BenutzerIn

user image
Wenn es alles hinter dem "letzten" : sein soll, könnte man es auch so lösen:

Code: (dl )
sed -ne 's/^.*:\(.*\)$/\1/p' file
D'OH
Daniel
Linuxer
 2008-08-15 17:51
#113549 #113549
User since
2006-01-27
3890 Artikel
HausmeisterIn

user image
Als Perl-Lösung:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$  echo "0.0.0.0:706
0.0.0.0:111
127.0.0.1:631
127.0.0.1:25
:::22
::1:631
::1:25" | perl -a -F: -wln -e 'print $F[-1]';
706
111
631
25
22
631
25
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!
GwenDragon
 2008-08-15 21:53
#113555 #113555
User since
2005-01-17
14748 Artikel
Admin1
[Homepage]
user image
Lieber Linuxer, es wurde nach Shellprogrammierung mit sed gefragt.
Nicht dass hier noch ein paar Leute mit bash, cut et al. anfangen ;)
Dubu
 2008-08-16 01:42
#113559 #113559
User since
2003-08-04
2145 Artikel
ModeratorIn + EditorIn

user image
pq+2008-05-05 17:58:28--
übrigens hast du in manchen zeilen mehrere doppelpunkte, es wäre also genauer
spezifiziert mit "alles nach dem letzten doppelpunkt".

Was wieder deutlich macht, dass wir in Zukunft mit IPv6-Adressen (und genau die sind in den letzten drei Zeilen zu finden) noch viel Spaß haben werden. Wo geht nicht überall Software davon aus, dass eine IP-Adresse grundsätzlich aus vier Zahlen von 0 bis 255 besteht, die von Punkten getrennt sind ...
Linuxer
 2008-08-16 01:59
#113560 #113560
User since
2006-01-27
3890 Artikel
HausmeisterIn

user image
Liebe GwenDragon, wenn Dir mein Beitrag nicht gefällt, dann steht es Dir frei ihn zu entfernen. ;o)
Immerhin ist es wurde es innerhalb der Perl-Community erfragt und da wollte ich eine Perl-Lösung nicht vorenthalten. ;o)

Wenn ich mir anschaue, wie manche Diskussionen hier entgleiten, dann ist meine Perl-Lösung bei einer sed-Frage das geringste Vergehen...

[edit]div. Überarbeitungen[/edit]
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!
GwenDragon
 2008-08-18 16:25
#113661 #113661
User since
2005-01-17
14748 Artikel
Admin1
[Homepage]
user image
Linuxer+2008-08-15 23:59:01--
Liebe GwenDragon, wenn Dir mein Beitrag nicht gefällt, dann steht es Dir frei ihn zu entfernen. ;o)

So war es von mir doch nicht gemeint.

Mir juckt da noch ein awk-Konstrukt dafür in den Fingern, aber Perl ist ja awkig genug ;)
Linuxer
 2008-08-18 16:28
#113662 #113662
User since
2006-01-27
3890 Artikel
HausmeisterIn

user image
GwenDragon+2008-08-18 14:25:30--
Mir juckt da noch ein awk-Konstrukt dafür in den Fingern, aber Perl ist ja awkig genug ;)


Immer her damit ;o)
Gilt ja nicht nur für ein schwedisches Möbelhaus, wenn man die Möglichkeiten entdecken will ;o)

Leider hat man nicht immer Perl zur Hand (wie ich gerade wieder schmerzlich feststellen muss); dafür darf ich mich mit awk plagen ;o) Von daher melde ich hiermit Interesse an der awk Lösung an.
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!
<< |< 1 2 >| >> 11 Einträge, 2 Seiten



View all threads created 2008-05-05 19:39.