Hi,
Ein Verzeichnis mit unschönen Dateinamen soll bereinigt werden. Schritt 1: Ersetze alle ‚_‘ oder ‚%20‘ im Namen durch ’ ':
$ echo "01-aaa\_bbb\_ccc-ccc%20ddd%20eee.log" | sed -e 's/\_\|%20/ /g'
Dadurch erhalte ich den bereinigten Namen „01-aaa bbb ccc-ccc ddd eee.log“
Nun möchte ich noch das erste Minuszeichen ersetzen, aber nur, wenn die ersten 2 Chars Ziffern darstellen und sofort darauf ein Minus folgt (wie oben), also alle ‚01-aaa…‘ ersetzen durch ‚01 aaa…‘
Folgendes klappt natürlich (noch) nicht:
echo "01-aaa bbb-ccc ddd.log" | sed -e 's/^[0-9][0-9]-\*/& /'
Ist das mit ‚sed‘ überhaupt machbar?