How can I rename files recursively, removing the extension?

view story

http://stackoverflow.com – What I am trying to do is to rename a whole bunch of files in a folder (recursively) into the filename MINUS the utf8 extension. For this, I am trying to run this code: find . -type f -name '*.utf8' -execdir mv "{}" "$(basename "{}" .utf8)" \; But it is not working... error is: mv: \`./foo.php.utf8' and `./foo.php.utf8' are the same file What I am doing wrong? I am on Ubuntu 12.04 (HowTos)