A shell script for Renaming large number of files in Linux

Hi, today I’m going to Blog about a very simple shell script, that may help you guys a lot.NO big deal, its very simple one. It was very helpful to me, once I had to rename a large number of images of Kim Kardashian.  So then I realise it will very easy doing it with a Shell script rather than manually rename it.#!/bin/bash
#
# Author: Gihan De Silva @  gihansblog.com
# rename script
# rename.sh
clear
x=0
for i in `ls *.jpg`
do
x=`expr $x + 1`
mv $i Kim_Kardashian$x.jpg
done

echo “rename done!”

Code Explanation!

#!/bin/bash 

This is how always a shell script starts.

clear

This line clears all the things already in the terminal window.

x=0

This line define and declare a variable.

for i in `ls *.jpg`

This line starts a loop and, it will list down all the JPEG(jpg) type images.

x=`expr $x + 1`

This line increases the value of x by 1.

mv $i Kim_Kardashian$x.jpg

This line renames all the files according to a sequence like, Kim_Kardashian1.jpg , Kim_Kardashian2.jpg, Kim_Kardashian3.jpg  ……

And you can just make Kim_Kardashian$x.jpg like My_file_name_$x.jpg ,so that’s it.

And to run this shell script, put rename.sh shell script into your file folder (directory) .

Then open Terminal window (Ctrl+T).

Go to your file folder through the terminal.

Then type chmod 755 rename.sh to get the permission.

Then run it by typing ./rename.sh

Now you will see files have renamed :D.

You can DOWNLOAD the shell script from here!

Thank you

Gihan De Silva

4 Comments

  1. Reply
    Prestashop Templates November 6, 2011

    Online Article…

    […]very few websites that happen to be detailed below, from our point of view are undoubtedly well worth checking out[…]…

  2. Reply
    Web design Philadelphia November 8, 2011

    Hi there.This valuable submit was really inviting, primarily since i have got was first attempting to find looking for grants this approach matter ultimate Saturday.

  3. Reply
    Web design Philadelphia November 9, 2011

    “I would like to thank you for the time you have contributed in composing this blog post”

  4. Reply
    MrEHQE December 8, 2011

    Tanks… i made a simple improvement of your code. It’s there:
    http://mrehqe.blogspot.com/2011/12/rename-sequenziale-da-shell.html
    It’s GPL licensed, right?

Leave a Reply