Renaming files/names in bulk, any smarter solution? I have few thousand files to rename.

The thing is I have the old file names and new file names as columns in a spreadsheet. Without renaming them one by one. Is there a better way to do this?

Appreciate any help. I have tried the following with little satisfaction:


File Renamer - This allows me to rename the specified files from an external list in .txt. However the Trial version limits to 500 items. I do not wish to pay $20 just for this manual job. 

Could have installed them in separated computers or virtual machine though.
Automator - Get specified items > Rename > 

Not as effectively as I thought it would.


Just looking for some smarter solution. Appreciate any help
export into a CSV (unicode UTF-8 or any other 8bit encoding, not UTF-16): two columns, separated by ; (assuming there is no ; in a file name) 
open Terminal
change to folder containing the files
run perl -pi -e 's/\r\n/\n/;' LISTOFNAMES.csv to fix CRLF issues
run while IFS=\; read old new; do mv "$old" "$new"; done &lt; LISTOFNAMES.csv


PS: This will overwrite existing files if the new name already exists.

PPS: Test this on a temporary folder with just a few files first (and make sure you have a recent backup)