Archiv verlassen und diese Seite im Standarddesign anzeigen : sed loeschen bis zeilenende
Huhn Hur Tu
12.09.11, 11:15
Hallo ich habe hier eine Datei mit variablem Inhalt.
Das gemeinsame ist dass Informationen durch "|" getrennt sind.
Ich will alles nach dem 9. "|" loeschen bis Zeilenende.
Ich komme aber nicht drauf wie ich da ansetzen muss.
Gruss Stefan
sed 's/\(\([^|]\+|\)\{9\}\).*/\1/' file
aber einfacher ist:
cut -d\| -f1-9 file
Huhn Hur Tu
12.09.11, 15:01
Thx 111111
sed 's/\(\([^|]\+|\)\{9\}\).*/\1/' file
aber einfacher ist:
cut -d\| -f1-9 file
Der sed ist ja eklig! ;)
Mit der Option -r lassen sich da zumindest beim GNU-sed ein paar \ einsparen:
sed -r -e 's/(([^|]+|){9}).*/\1/' file
Extended Regex sind zwar "extended", aber auch einfacher und lesbarer! :)
Gruß
L00NIX
Huhn Hur Tu
13.09.11, 10:08
Wo siehst du hier eine Option -r?
Wo siehst du hier eine Option -r?
Bei meiner Fassung (rot), aber hast ja recht... nachtragend. ;)
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.