2

I am trying to rename a word in the file name of multiple JPEG files from Hoddesden to Hoddesdan.

How can I do it on the Ubuntu command line?

Examples

R59-GBR_Hoddesden_2015-08-21_15-48-00-190_UNKNOWN.jpg
to 
YR59-GBR_Hoddesdan_2015-08-21_15-48-00-190_UNKNOWN.jpg

YR59FRP-GBR_Hoddesden_2015-08-21_15-47-59-222_APPROACH to YR59FRP-GBR_Hoddesdan_2015-08-21_15-47-59-222_APPROACH

pretyv5
  • 49

4 Answers4

11

With rename

rename 's/Hoddesden/Hoddesdan/' *.jpg

Example

% ls -laog *.jpg
-rw-rw-r-- 1 0 Sep  1 13:30 R59-GBR_Hoddesden_2015-08-21_15-48-00-190_UNKNOWN.jpg
-rw-rw-r-- 1 0 Sep  1 13:30 YR59FRP-GBR_Hoddesden_2015-08-21_15-47-59-222_APPROACH.jpg

% rename 's/Hoddesden/Hoddesdan/' *.jpg

% ls -laog *.jpg
-rw-rw-r-- 1 0 Sep  1 13:30 R59-GBR_Hoddesdan_2015-08-21_15-48-00-190_UNKNOWN.jpg
-rw-rw-r-- 1 0 Sep  1 13:30 YR59FRP-GBR_Hoddesdan_2015-08-21_15-47-59-222_APPROACH.jpg
A.L
  • 531
A.B.
  • 92,125
6

You can use rename (prename) :

rename -n 's/Hoddesden/Hoddesdan/' *Hoddesden*

-n is for dry run, if you are satisfied with the changes remove -n to let the operation take place :

rename 's/Hoddesden/Hoddesdan/' *Hoddesden*
heemayl
  • 93,925
5

We also have rename.ul (rename is a perl command).

rename.ul Hoddesden Hoddesdan *Hoddesden*

$ ls 
R59-GBR_Hoddesden_2015-08-21_15-48-00-190_UNKNOWN.jpg
YR59FRP-GBR_Hoddesden_2015-08-21_15-47-59-222_APPROACH
$ rename.ul Hoddesden Hoddesdan *Hoddesden*
$ ls 
59-GBR_Hoddesdan_2015-08-21_15-48-00-190_UNKNOWN.jpg
YR59FRP-GBR_Hoddesdan_2015-08-21_15-47-59-222_APPROACH
Rinzwind
  • 309,379
1

With mmv, install by

sudo apt-get install mmv

and use as following:

mmv '*Hoddesden*.jpg' '#1Hoddesdan#2.jpg'
A.B.
  • 92,125
ltn100
  • 220