Batch Rename Files in Unix Command Line

Sometimes the unix shell script is still the best tool for the job.

Today I needed to rename a bunch of java properties files from *.property to *.json. Ok, I needed to do more then just rename them, but it makes the example easier to assume that is all that I needed done 🙂

I wrote the following script in rename.sh file.

#!/bin/bash          
for file in *.properties; do
  mv "$file" "${file%properties}json"
done
Code language: JavaScript (javascript)

Then I ran chmod +x rename.sh followed by ./rename.sh to run the file. Done.

It’s a small example, but it demonstrates well just how powerful bash scripts can be.

1 thought on “Batch Rename Files in Unix Command Line”

  1. What about renaming “hidden” files? Do you know how to get around it? I tried your method above but did’t work. Any help would be greatly appreciated. Thanks.

Comments are closed.