linux bash mass rename tool Centos/Debian/Ubuntu

Say you have a bunch of files like this:

file-01.jpg

file-02.jpg

...............

What if you want to mass rename them?

the rename tool can work just like sed

For Debian based distros:

Note "file" is what we search for and "newname" is what we replace it with, so substitute according to your requirements.

rename s/file/newname/ name-file-*.jpg

For RHEL Centos:

rename file newname file-*
 

Alternative way to batch rename files in Linux with bash using ls, sed and mv

for file in `ls -1`; do
newname=`echo $file|sed s/originalname/newname/g`
mv $file $newname
done

Just change "originalname" and "newname" in sed to match what you need.

The above doesn't work on spaces you'll need to use this code instead:

Based on this solution for not treating spaces as a new line or new variable in bash

For example the below code will replace all spaces with _

IFS=$(echo -en "\n\b")

for file in `ls -1`; do newname=`echo $file|sed s/" "/"_"/g`;  mv $file $newname;  done

 

Another example

Say if you have some filenames that have illegal samba characters and want to remove them.

In this example it is times with colons eg "14:30:32"

Sed searches for ":" and replaces with "" (nothing) but we could replace with _ - or whatever else.

for file in `ls -1`; do
newname=`echo $file|sed s/://g`
mv $file $newname
echo $newname
done
 



Tags:

linux, bash, rename, centos, debian, ubuntusay, jpg, sed, distros, quot, newname, substitute, requirements, rhel, batch, ls, mv, echo, originalname, doesn, spaces, ll, variable, _, ifs, en, filenames, samba, characters, colons, eg, searches, replaces,

Latest Articles

  • how to use ifplugd in Linux to execute a command or script when a NIC cable is unplugged or plugged in
  • dd how to backup and restore disk images including compression with gzip
  • mpv / mplayer with Radeon / AMD GPU Video Card Driver enable VDPAU GPU Accelerated Video Decoding
  • Wordpress Reset Blog User Password from MySQL Using Linux Bash and not PHPMyadmin
  • Ubuntu Linux Mint Debian xorg performance and tear-free tuning for AMD Radeon Based Cards
  • Centos 7 Stopped and Disabled Firewalld and ports still blocked
  • MariaDB / MySQL Reset Root Forgotten Password on Centos 7
  • Centos 7 How to install Mysql/Mariadb
  • PHP 7.2, Apache and Centos 7 How To Install
  • Ubuntu Debian Linux Mint r8169 r8168 Network Driver Problem and Solution
  • Linux 3D Performance benchmarks with glxgears 59-60fps solution
  • How To Install Asterisk 16 17 on Debian Ubuntu Linux
  • Linux Ubuntu Debian Centos How To Make a Bootable Windows 7, 8, 10, 2016, 2019 Server USB from ISO
  • How To Restore Windows MBR Bootsector from Linux using syslinux
  • Linux Ubuntu Cannot Print Large Images
  • Cannot Print PDF Solution and Howto Resize
  • Linux Console Login Screen TTY Change Message
  • Apache Cannot Start Listening Already on 0.0.0.0
  • MySQL Bash Query to pipe input directly without using heredoc trick
  • CentOS 6 and 7 / RHEL Persistent DHCP Solution