There may be thousands of photos in one directory. Maybe I'll decide to break it down more than that someday, but there are simply too many directories and too many photos for me to go through and move them all and consolidate them one folder at a time.
All the bash one liners I found didn't work or didn't have the desired effect, so I went with a good ol' ruby script to accomplish this. The script isn't all that special. It doesn't go through and delete duplicates, or actually sort them by year or anything, but it will collapse an existing directory tree down to the root by moving all the files in subdirectories down to the root.
To execute a ruby script you need to have ruby installed and you will have ruby installed if you install Apple Command Line Tools. To see if you have ruby installed, launch Terminal and type (exclude the '$', that signifies the bash prompt):
Now, once you have ruby installed you can execute the script and free yourself from 20,000 leagues under the directory tree by running:
Hopefully someone finds it useful.