How to replace apostrophes in the files of a directory

March 28, 2015 1.9k views
Linux Commands System Tools Linux Basics Ubuntu DigitalOcean Getting Started FAQ

One of my client’s gave me a couple audio files to add to his website. I do this through an index in a database. However, since they have apostrophes, they cause broken links.

I wanted a command to rename all of the files by removing all apostrophes while retaining all other characters in the file name.

I am using and Ubuntu server.

1 Answer

First, cd into the directory that has the files (or folders with the files). Do NOT do this from / or /root/

next, just run this:

bad_names=$(find . -name "*'*");for i in `echo $bad_names`; do new_name=$(echo "$i"| sed -e "s/'//g"); echo "Moved $i to $new_name"; mv "$i" $new_name;done
Have another answer? Share your knowledge.