- Linux Rename File Command
- How to rename a file Linux?
- Examples: Renaming files with mv Command
- Linux rename a file syntax
- How to use rename command to renames multiple files
- Detailed information about mv command
- How to Easily Rename Files in Linux
- Renaming Files with “mv” Command
- Using the “rename” Command
- Métamorphose2
- pyRenamer – The Easy Way Out
- UNIX Command To Rename A File
- mv command syntax to rename a file on Unix
- Examples
- Rename a directory/folder Unix command
- Move a file/folder to an existing directory
- How to rename a file on Unix and display verbose output
- Moving or renaming files with confirmation on Unix
- A note about renaming multiple files
- Summing up
Linux Rename File Command
How to rename a file Linux?
The syntax is as follows:
mv old-file-name new-file-name
mv [options] old-file-name new-file-name
mv file1 file2
Examples: Renaming files with mv Command
In this example, rename a file called resumezzz.pdf to resume.pdf. Open a command-line terminal (select Applications > Accessories > Terminal), and then type:
mv resumezzz.pdf resume.pdf
If resumezzz.pdf is located in /home/vivek/docs/files directory, type:
cd /home/vivek/docs/files
mv resumezzz.pdf resume.pdf
OR
mv /home/vivek/docs/files/resumezzz.pdf /home/vivek/docs/files/resume.pdf
Use the ls command to view files:
ls -l file1
ls -l file1 file2
ls -l /home/vivek/docs/files/*.pdf
ls -l *.pdf
Linux rename a file syntax
In short, to rename a file:
mv file1 file2
You can get verbose output i.e. mv command can explain what is being done using the following syntax:
mv -v file1 file2
Sample outputs:
To make mv interactive pass the -i option. This option will prompt before overwriting file and recommended for new users:
mv -i file1 file2
Sample outputs:
How to use rename command to renames multiple files
The syntax is:
rename ‘s/old/new/’ files
rename [options] ‘s/old/new/’ files
For example, rename all perl files (*.perl) to *.pl, enter:
rename ‘s/perl/pl/’ *.perl
OR
rename -v ‘s/perl/pl/’ *.perl
Sample outputs:
The above command changed all files with the extension .perl to .pl. See “Howto Rename Multiple Files At a Shell Prompt In Linux or Unix” for more info.
- No ads and tracking
- In-depth guides for developers and sysadmins at Opensourceflare✨
- Join my Patreon to support independent content creators and start reading latest guides:
- How to set up Redis sentinel cluster on Ubuntu or Debian Linux
- How To Set Up SSH Keys With YubiKey as two-factor authentication (U2F/FIDO2)
- How to set up Mariadb Galera cluster on Ubuntu or Debian Linux
- A podman tutorial for beginners – part I (run Linux containers without Docker and in daemonless mode)
- How to protect Linux against rogue USB devices using USBGuard
Join Patreon ➔
Detailed information about mv command
You can also view the manual page on mv using the following command:
man mv
OR
info mv
OR
man rename
🐧 Get the latest tutorials on Linux, Open Source & DevOps via
Источник
How to Easily Rename Files in Linux
Renaming files is not a particularly advanced operation; as long as it’s done on a small number of files, it usually doesn’t require special tools. However, when there’s an entire folder of photos from last year’s vacation waiting to be renamed, it may be wise to consider some timesaving tricks or apps.
There are two general approaches when you rename files in Linux: via the command-line interface or a standalone application. Linux users already know how powerful the CLI can be, so it shouldn’t be surprising that there are several commands for file renaming.
Also read: How to Copy and Paste Text, Files and Folders in Linux Terminal
Renaming Files with “mv” Command
A simple way to rename files in Linux is with the mv command (shortened from “move”). Its primary purpose is moving files and folders, but it can also rename them, since the act of renaming a file is interpreted by the filesystem as moving it from one name to another.
The following syntax is used to rename files with mv:
“filename1.ext” is the original name of the file, and “filename2.ext” is the new name.
The same pattern works for renaming folders. If the files are not located in the currently active folder, their full path has to be specified:
Note that the mv command requires write permission for the folder containing the files. In the case of system files and folders, the user needs to obtain root permissions to rename files by prepending mv with sudo . An extra layer of protection is provided by the -i (interactive) option, which asks the user to confirm the file rename before it’s actually applied.
There’s also the -v (verbose) option, which lists all changes that have been made by mv . Options are written after mv but before the filenames.
Using the “rename” Command
This command to rename files in Linux is slightly more advanced than mv because it requires the knowledge of, or at least a basic familiarity with, regular expressions. That may sound scary, but don’t give up on rename just yet – it can be used for plain batch renaming simply by following tutorials like this one.
In many distributions of Linux, the rename command may not be available by default. If you are unable to use it in yours, you will have to install it.
In Debian-based Linux, type this in your terminal:
In Arch-based Linux:
The rename syntax looks like this:
The letter “s” stands for “substitute,” and it’s the main part of the regular expression. Single quotes around it are obligatory. Available options are:
- -v (verbose: prints the list of renamed files along with their new names)
- -n (“no action:” a test mode or simulation which only shows the files that will be changed without touching them)
- -f (a forced overwrite of the original files)
The rename command also accepts wildcards to rename multiple files of the same type, and it works on file extensions as well. For example, this would change all files with the extension .jpeg to .jpg:
The wildcard symbol (*) means that all files in the folder will be affected.
The regular expression also has its own options (modifiers): “g” (global: affects all occurrences of the expression) and “i” (performs case-insensitive substitution). They are written at the end of the expression just before the closing single quote and can be combined:
This would apply to all .jpg files that contain “DSC,” “dSC,” and “dsc” – change that part of the filename to “photo.” However, because of the “-n” option, the command wouldn’t actually rename the files but just print them in the console window.
Substitution is not the only thing this regular expression can do. There’s also translation – marked by the letter “y” – which can transform the filenames on a more complex level. It is most often used to change the filename case:
This would change the names of all .jpg files from lowercase to uppercase. To do it in the reverse, just switch the “oldname” and “newname” parts of the regular expression.
Using the rename command boils down to mixing a few basic patterns to achieve the desired result. Thanks to the -n option, the users will never have to put their files at risk (or their nerves at stake) since it offers a safe and useful preview of what the renamed files will look like.
Also read: How to Fix the “No Space Left on Device” Error on Linux
Métamorphose2
Métamorphose is a cross-platform file and folder mass renamer. For those who prefer a GUI tool for carrying out renaming operations, Métamorphose is quite a powerful tool to use. It is available for both Windows and Linux.
To get started, go to its website and download the installer file for your distro. It provides a deb file for Debian-based distro and RPM package for Fedora, Mandriva and SUSE.
Once you run the app, it will be the first “Picker” tab. This is where you select the directory that contains the files you want to batch rename. Do note that it only supports one directory per renaming operation, though it can recurse through child folders within the selected directory.
After selecting the directory, click on the “Renamer” tab. From here you can decide on the renaming rules. On the left pane you can select the action you want to perform. For example, “insert” will insert terms to the name, while “length” allows you to trim the file name to a number of characters. There are also the “move text,” “replace” and “modify” options you can choose. As you can see, it provides extensive options for you to rename your files.
Lastly, just click the “Go” button at the top of the bottom pane to run the renaming action. If you find any error after renaming, there is an Undo option to revert all the changes.
Also read: How to Use the lp Command in Linux to Print Files From Terminal
pyRenamer – The Easy Way Out
Finally, the solution that all the anti-console users have been waiting for: a desktop application where everything can be done with a simple click of the mouse. pyRenamer is a crazy-powerful file renaming tool written in Python, which can be found here. Users of Ubuntu and its derivatives can install pyRenamer from the repositories using the command:
The interface consists of four parts:
- Tree-view file browser for selecting files and folders
- Central preview pane showing the filenames before and after renaming
- Tabbed control area for choosing the renaming criteria
- Options sidebar
pyRenamer can remove accents and duplicate symbols from filenames; replace any string of text with another; 20names to uppercase, lowercase or sentence case; and automatically insert or remove spaces and underscores. Beginners will love it because all of this can simply be selected in the tabbed area, previewed in the main area and confirmed by clicking Rename. If they wish to experiment with patterns, pyRenamer provides a cheatsheet to make it easier.
Advanced users will appreciate pyRenamer’s ability to rename multimedia files by reading from their metadata. It’s also possible to manually rename a single file when a batch rename is unnecessary.
In essence, pyRenamer wraps the functionality of the mv and remove commands into a user-friendly GUI. It’s a great choice for those who aren’t confident in their CLI skills.
Now that you know how to rename files in Linux, you may want to learn how to recursively change file permissions. Read on to learn how to diagnose a slow-running Linux computer or perhaps make use of the Hosts file to block/access websites.
Miguel has been a business growth and technology expert for more than a decade and has written software for even longer. From his little castle in Romania, he presents cold and analytical perspectives to things that affect the tech world.
Источник
UNIX Command To Rename A File
H ow do I rename a file in UNIX using command line options?
This quick UNIX tutorial explains mv command to rename file, which is a Unix command that renames one or more files or directories. The original filename or directory name is no longer accessible. Write permission is required on all directories and files being modified. Use the mv command to:
Tutorial details | |
---|---|
Difficulty level | Easy |
Root privileges | No |
Requirements | mv command to move files on Unix/macOS/*BSD |
Est. reading time | 1 minute |
- Moves a file (i.e. gives it a different name).
- Rename a file.
mv command syntax to rename a file on Unix
You need to use the mv command to rename a file as follows on Unix, macOS and *BSD family of operating systems:
Examples
Open the terminal (bash shell prompt) and type the following command to list file names:
In this example, rename a file called data.txt to letters.txt, enter:
File is renamed so the following command will display an error on screen:
The following would rename a file called foo to bar, while keeping it in the current directory:
- No ads and tracking
- In-depth guides for developers and sysadmins at Opensourceflare✨
- Join my Patreon to support independent content creators and start reading latest guides:
- How to set up Redis sentinel cluster on Ubuntu or Debian Linux
- How To Set Up SSH Keys With YubiKey as two-factor authentication (U2F/FIDO2)
- How to set up Mariadb Galera cluster on Ubuntu or Debian Linux
- A podman tutorial for beginners – part I (run Linux containers without Docker and in daemonless mode)
- How to protect Linux against rogue USB devices using USBGuard
Join Patreon ➔
Rename a directory/folder Unix command
The following would rename a directory (folder) called dir1 to dir2, while keeping it in the current directory:
Move a file/folder to an existing directory
The following would move a file named resume.txt, without changing its name, to an existing subdirectory called /home/nixcraft/Documents/
How to rename a file on Unix and display verbose output
Pass the -v option to the mv command to show files after they are moved. For example:
Moving or renaming files with confirmation on Unix
We need to pass the -i option to the mv. It causes the mv command to write a prompt to screen before moving a file that would overwrite an existing file. If the response from the keyboard input begins with the character ‘y’ or ‘Y’, then move attempted. It is a safety feature:
mv -i old_name new_name
mv -i -v sales old_sales
We can also tell the mv command, not to overwrite an existing file by passing the -n :
You will see message as follows:
Here is a sample session from my FreeBSD Unix server:
A note about renaming multiple files
You need to use additional commands as mv cannot do that for you. Please see the following tutorials:
Summing up
The mv command may change or add an option as per Unix vendor and version. Hence read the man pages. Type the following man command to read mv command man page:
man mv
🐧 Get the latest tutorials on Linux, Open Source & DevOps via
Источник