Here's a solution - although I can not take credit for this, I did modify it a bit. This tip appeared in today's Unix Guru Universe Tips mailing list (a great mailing list of a single tip each day ... I have learned LOTS just from this list).
Read the rest of the article for the details...
[Editor's note: We have another hint that deals with deleting badly named files, but this method seemed unique enough to merit a hint of its own...]
First change dir to the location of the poorly named file.
cd /dir/where/filename/is/locatedThen look for the file's "inode" number - the inode is the unique numeric identifier for this file:
ls -i filenameYou will get back a line that looks like this:
296053 filenameThe inode number is shown in the left column. Now use the "find" cmd plus the inode number to locate the file and rename it to something more UNIX friendly that you can then delete:
find . -inum 296053 -exec mv {} ByeBye ;In this example, I have located the file and renamed it to "ByeBye", which I can then easily delete with rm. If you are feeling a little brave you can go ahead and tack on the "rm" statement right to the end of the "find" cmd and do it all it one motion:find . -inum 296053 -exec mv {} ByeBye ; -exec rm ByeBye ;This finds the file, renames the file, and then deletes the renamed file. Note: The spaces in the commands above are required.

