Den Vorschlag von grumpy grizzly fand ich auch nur elegant !
Wie wäre es mit grep?
Sehr schön!
echo "$string" | grep -o 'laufwerk[0-9][0-9]' | tr '\n' ','Einziger Nachteil, dann ist ein Komma am Ende der Ausgabe anstatt eines newline. Aber das bekommt man ja auch recht einfach weg.
Das lässt sich einfach regeln:
$ string='aaa*(laufwerk12)*bb*(laufwerk33)*aaa' 16:14:10 work$ echo "$string" | grep -o 'laufwerk[0-9][0-9]' | paste -s -d , - laufwerk12,laufwerk33
Dafür hätte ich sonst sed mit seinen Holdspace-Tricks benutzt: (aber paste ist natürlich wirklich besser !)
track@lucid:~$ echo '*(laufwerk02)**(laufwerk23)***' | grep -o '(laufwerk[0-9][0-9])' | sed -n 'x;G; ${s/\n/,/g;p}'
(laufwerk02),(laufwerk23) LG,
track
2004 – 2012 ubuntuusers.de • Einige Rechte vorbehalten