

You want to replace the the first occurrence of abc with xyz in all files in the current directory. doc file format in the current directory, simply run: $ mmv \*.txt \#1.doc You can even rename all files with a certain extension to a different extension. Also, you can enclose the patterns with quotes too. In our example, we have only one wildcard (the asterisk), so we write a #1. And, the hash sign should be escaped as well. A ‘#2′ in the ‘to’ pattern would match the second wildcard and so on. It matches the first wildcard found in the ‘from’ pattern. The ‘#1′ in the ‘to’ pattern is a wildcard index. Please be mindful that you must escape the wildcard characters, otherwise they will be expanded by the shell and mmv won’t understand them.

We use wildcards, such as ‘*’, ‘?’ and ‘‘, to match one or more arbitrary characters. In the above example, the first parameter ( a*) is the 'from' pattern and the second parameter is 'to' pattern ( b#1).Īs per the above example, mmv will look for any filenames staring with letter 'a' and rename the matched files according to second parameter i.e 'to' pattern. $ lsĪs you can see, all files starts with letter "a" (i.e a1.txt, a2.txt, a3.txt) are renamed to b1.txt, b2.txt, b3.txt. Let us check if the files have been renamed or not. To rename all files starting with letter "a" to "b", simply run: $ mmv a\* b\#1 Of course, you can do this manually in few seconds.īut just think if you have hundreds of files and want to rename them? It is quite time consuming process. Now you want to rename all files that starts with letter "a" to "b". Let us say, you have the following files in your current directory. To install mmv on Debian, Ubuntu, Linux Mint, and Pop OS, run the following command: $ sudo apt-get install mmv It is available in the default repositories of Debian-based systems. The mmv utility is used to move, copy, append and rename files in bulk using standard wildcards in Linux and Unix-like operating systems. I will keep updating the list if I come across any new method in future. As of writing this, I am aware of 8 different ways to batch rename files. There could be many commands and utilities to a bulk rename bunch of files. There are a few other utilities available to batch rename files in Linux. What would you do if you wanted to rename multiple files at a time? Worry not! But, the mv command won't support batch renaming files at once.
