Dateien in Unterverzeichnissen umbennen (Bash)

Ich habe in einem Verzeichnisse mehrere Unterverzeichnisse. In JEDEM dieser Unterverzeichnisse gibt es eine Datei namens 001.vdr und eine Datei namens name.txt. Nun möchte ich daß die Datei 001.vdr umbennen. Der neue Dateiname soll der Inhalt der Datei name.txt sein.

Ich versuche nun ein bash-Skript zu erstellen, daß genau das macht. Leider ohne Erfolg. Wer kann mit helfen?

#!/bin/ksh

mv 001.vdr `cat name.txt` 

dto für bash (dieses muss in den Unterverzeichnissen ausgeführt werden => This is left as an exercise to the reader).

Gruß
HH

#!/bin/bash

process_single_dir()
{
    cd $1

    if [ -e 001.vdr -a -e name.txt ]; then
        mv 001.vdr `cat name.txt`
    fi  
}

process_dirs()
{
    while read dir ; do
        if [ "x$dir" != "x." ]; then
            ( process_single_dir "$dir" )
        fi
    done
}

cd `dirname $0` 
find . -type d -print | process_dirs 

Da ich gerade - beim Warten auf ein Telefonat - doch noch etwas Zeit hatte, hier mal ein Vorschlag … Sicherheitsmaßnahmen musst du aber selbst einbauen (z.B. könnte die Datei name.txt ja leer sein)

Das Skript muss in der Wurzel deiner Verzeichnisse liegen.

Gruß
HH