Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
-
klak
- Beiträge: 491
- Registriert: 31.01.2003 19:18:45
Beitrag
von klak » 13.09.2007 20:24:28
Hallo *,
habe folgende Datei:
daraus brauche ich
.
ist das mit
einem awk oder sed Aufruf zu schaffen?
Dank und Gruss
klak
-
kotzkind
- Beiträge: 279
- Registriert: 29.10.2006 17:56:10
Beitrag
von kotzkind » 13.09.2007 20:39:03
Hatte mal ein ähnliches Problem.
Hab es dann so gelöst das ich alle tags deren inhalt ich filtern wollte durch ein zeilenumbruch ersetzt hatte und dann noch die einzelnen zeilen danach gefiltert hatte welche mit http:// angefangen haben.
Wie ich das genau gemacht hab weiß ich nicht mehr vielleicht find ich ja noch das skript.
Jedenfalls war kein awk notwendig
in einem aufruf wirst du eher awk verwenden müssen.
In einer zeile bringt man es ja trotzdem
-
Meillo
- Moderator
- Beiträge: 9254
- Registriert: 21.06.2005 14:55:06
- Wohnort: Balmora
-
Kontaktdaten:
Beitrag
von Meillo » 13.09.2007 21:22:52
Code: Alles auswählen
sed -n -e '/<testurl>/ s/^.*<testurl>\(.\+\)<\/testurl>.*$/\1/p' datei.txt
liefert was du suchst.
Use ed once in a while!
-
fuzzy
- Beiträge: 1021
- Registriert: 04.10.2003 12:15:52
Beitrag
von fuzzy » 14.09.2007 23:11:51
Hallo klak,
Code: Alles auswählen
awk -F "</*testurl>" '/<\/*testurl>/ {print$2}' datei.txt
Gruß fuzzy
-
yeti
Beitrag
von yeti » 15.09.2007 03:40:01
Code: Alles auswählen
awk 'match($0,"<testurl>.*</testurl>") { print substr($0,RSTART+9,RLENGTH-19) }' DatEi
...die 9 (Länge des Starttags) und die 19 (Länge von Start- plus Endtag) sind ggfs an andere Tags anzupassen.
-
klak
- Beiträge: 491
- Registriert: 31.01.2003 19:18:45
Beitrag
von klak » 16.09.2007 14:16:41
Ahhh super, dank an alle.
klak