Ersetzen Sie einen Teil der Zeichenfolge im Dateinamen

Ersetzen Sie einen Teil der Zeichenfolge im Dateinamen

Ich habe mehrere Dateien in einem Verzeichnis, die mit „StringtoReplace“ enden. Wie kann ich diesen Teil des Dateinamens für alle Dateien im Verzeichnis durch eine neue Zeichenfolge, „ReplacedString“, ersetzen?

Antwort1

Dadurch wird die erste Instanz von „StringtoReplace“ durch „ReplacedString“ ersetzt:

for f in *StringtoReplace; do [ -f "$f" ] && mv -- "$f" "${f/StringtoReplace/ReplacedString}"; done

Dies ersetzt diezuletztInstanz von „StringtoReplace“ mit „ReplacedString“:

for f in *StringtoReplace; do [ -f "$f" ] && mv -- "$f" "${f%StringtoReplace}ReplacedString"; done

verwandte Informationen