Dieses Skript gibt die erforderlichen mv
Befehle an stdout
. Sie sollten sie in einer Datei ( sh script > file
) speichern und untersuchen. Wenn Sie die Ausführung als sicher empfinden, können Sie die Befehle in file ( sh file
) ausführen . Oder Sie können sich ändern, print
um system
in dem selbst - Skript.
find $1 -type f > /tmp/to_rename find $1 -type d >> /tmp/to_rename perl -lne ' $re = qr/([12]\d\d\d)(\.\w*)?$/; if (/$re/) { $old = $_; s/$re/(\1)\2/; print("mv \"$old\" \"$_\""); } ' /tmp/to_rename