Thursday, March 11, 2010
 

File renaming bash script

Simple script which will rename all files without white space characters and other unhallowed symbols. I was using it for preparing images for gallery. Script renames all files from it's current location in filesystem.

#!/bin/sh

find -type d -name '*' > files.txt
while read line
do 
fileName="${line// /-}"
fileName="${fileName//&/-}"
fileName="${fileName//(/-}"
fileName="${fileName//)/-}"
fileName="${fileName//_/-}"
fileName="${fileName//!/}"
fileName="${fileName//\'/}"
fileName="${fileName//-----/-}"
fileName="${fileName//----/-}"
fileName="${fileName//---/-}"
fileName="${fileName//--/-}"
mv "$line" "$fileName"
done < files.txt


find -type f -name '*.*' > files.txt
while read line
do 
fileName="${line// /-}"
fileName="${fileName//&/-}"
fileName="${fileName//(/-}"
fileName="${fileName//)/-}"
fileName="${fileName//_/-}"
fileName="${fileName//!/}"
fileName="${fileName//\'/}"
fileName="${fileName//-----/-}"
fileName="${fileName//----/-}"
fileName="${fileName//---/-}"
fileName="${fileName//--/-}"
fileName="${fileName//-./.}"
mv "$line" "$fileName"
done < files.txt
Back »

Comments: 0

Leave a reply »

 
  • Leave a Reply
    Your gravatar
    Your Name
     
     
     
     
     
 
About Remdex site

Simple site for simple peoples.

Get in touch

E-mail: remdex@gmail.com