Linux rename directory and directories

How do I rename a directory via the command line?

I have got the directory /home/user/oldname and I want to rename it to /home/user/newname . How can I do this in a terminal?

7 Answers 7

mv /home/user/oldname /home/user/newname 

This will not work if the new name is already an existing directory. Instead, it will move the old directory inside the new one.

If the directory name is the same with capitalization you will get No such file or directory . To avoid this do something like mv /home/user/Folder /home/user/temp; mv /home/user/temp/ /home/user/folder .

To just rename a file or directory type this in Terminal:

with space between the old and new names.

To move a file or directory type this in Terminal.

it will move the file to the desktop.

mv -T /home/user/oldname /home/user/newname 

That will rename the directory if the destination doesn’t exist or if it exists but it’s empty. Otherwise it will give you an error.

mv /home/user/oldname /home/user/newname 

One of two things will happen:

  • If /home/user/newname doesn’t exist, it will rename /home/user/oldname to /home/user/newname
  • If /home/user/newname exists, it will move /home/user/oldname into /home/user/newname , i.e. /home/user/newname/oldname

Doesn’t work if you want to capitalize the directory name in a case-insensitive filesystem (likely on MacOS). mv -T $PWD/analisys $PWD/Analisys returns mv: ‘/Users/sixtykeys/Projects/murphy/tmp/analisys’ and ‘/Users/sixtykeys/Projects/murphy/tmp/Analisys’ are the same file . I worked around this by using an intermediate name (i.e. analisys_ ).

The command may not have been successful due to the limitations of the filesystem, but from another perspective it was successful in interpreting your intentions (renaming a directory, not moving it) 🙂

Источник

Как переименовать папку Linux

Переименовать папку в Linux не намного сложнее, чем переименовать файл. Вы можете сделать это в графическом интерфейсе или с в терминале с помощью нескольких команд. Как и для других задач в Linux для этой существует множество способов решения.

Можно переименовать не просто одну папку, а выбрать стразу несколько и настроить для них массовое переименование. Вы можете использовать команду mv, rename, а также утилиту find для массового переименования. Но сначала давайте поговорим о том как всё это сделать в файловом менеджере.

Как переименовать папку в Linux

1. Файловый менеджер

Самый простой способ переименовать папку — в файловом менеджере. Например, для Ubuntu это Nautilus. Откройте файловый менеджер и кликните правой кнопкой мыши по нужной папке. В контекстном меню выберите Переименовать:

Затем просто введите новое имя:

После нажатия клавиши Enter папка будет переименована.

2. Команда mv

Команда mv предназначена для перемещения файлов в другое место, однако её можно без проблем использовать чтобы переименовать папку или файл не перемещая его никуда. По сути, если файл или папка перемещается в пределах одного раздела диска, то на самом деле они просто переименовываются, а физически остаются на том же месте. Синтаксис:

$ mv старое_имя новое_имя

Чтобы переименовать папку ~/Музыка/Папка 1 в Папка 11 используйте:

mv ~/Музыка/Папка_1 ~/Музыка/Папка_10

Если в имени файлов есть пробелы, то путь к файлу следует взять в кавычки. После выполнения этой команды папка будет переименована:

Читайте также:  Linux run command with user

Обратите внимание, что слеш в конце папки назначения писать нельзя, иначе, ваша папка будет перемещена в указанную папку, если такая существует.

3. Команда rename

Команду rename можно использовать аналогично mv, только она предназначена специально для переименования файлов и папок поэтому у неё есть несколько дополнительных возможностей. Синтаксис команды следующий:

$ rename регулярное_выражение файлы

Но прежде всего программу надо установить:

Самый простой пример, давайте заменим слово «Папка» на «Dir» во всех папках:

Можно пойти ещё дальше и использовать регулярное выражение чтобы заменить большие буквы в названиях на маленькие:

Чтобы не выполнять действия, а только проверить какие папки или файлы собирается переименовывать команда используйте опцию -n:

4. Скрипт Bash

Для массового переименования папок можно использовать скрипт на Bash с циклом for, который будет перебирать все папки в директории и делать с ними то, что нужно. Вот сам скрипт:

#!/bin/bash
for dir in *
do
if [ -d «$dir» ]
then
mv «$» «$_new»
fi
done

Этот скрипт добавляет слово _new для всех папок в рабочей директории, в которой был он был запущен. Не забудьте дать скрипту права на выполнение перед тем, как будете его выполнять:

5. Команда find

Массовое переименование папок можно настроить с помощью утилиты find. Она умеет искать файлы и папки, а затем выполнять к найденному указанную команду. Эту особенность программы можно использовать. Давайте для всех папок, в имени которых есть dir добавим слово _1. Рассмотрим пример:

find . -name «Dir*» -type d -exec sh -c ‘mv «<>» «<>_1″‘ \;

Утилита ищет все папки, в имени которых есть слово Dir, затем добавляет с помощью mv к имени нужную нам последовательность символов, в данном случае единицу.

6. Утилита gio

Утилита gio позволяет выполнять те же действия что и с помощью обычных утилит mv или rename, однако вместо привычных путей, можно использовать пути GVFS. Например: smb://server/resource/file.txt. Для переименования папки можно использовать команду gio move или gio rename. Рассмотрим пример с move:

gio move ~/Музыка/Dir_3 ~/Музыка/Dir_33

Переименование папки Linux выполняется аналогично тому, как это делается с помощью mv.

Выводы

В этой небольшой статье мы рассмотрели как переименовать папку Linux. Как видите, для этого существует множество способов и всё делается достаточно просто.

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Источник

Rename Directory/Folder in Linux

linux rename dir

Renaming or moving folder and directories can be complicated if those folders and directories have some subfolders.

There’s absolutely not any rename function in Ubuntu Linux.

Rather, you merely move the document, giving it a new name. If you do not really mv it to a different directory, then you’ve effectively renamed it:

Renaming directories on Linux isn’t done with a specific “rename” or “ren” etc. command but with a command which serves multiple functions: the “mv” command.

The mv is the brief form for the “move”. We can simply rename by providing the current directory and folder name and destination folder or directory name. If the origin or directory has files we will need to rename by using the recursive move command. This is only going to change the given folder or directory name but transfer all subfolder and files.

Rename Directories on Linux with mv

To rename a directory on Linux, use the “mv” command and specify the directory to be renamed in addition to the destination for your directory. The general syntax of mv command is:

Читайте также:  Asus t100ta linux mint
An example command of renaming folder

In this case, we’ll rename the directory called curr_data into new_data.

Rename Directories using the find command

In some instances, you might not know exactly where your directories can be found on your system that you want to rename.

Fortunately for you, there’s a command that can help you find the directories on a Linux system.

This is called the “find” command.

So as to locate and rename directories on Linux, use the “find” command with the “type” option so as to search for directories. After that, you can eliminate your directories by implementing the “mv” command with the“-execdir” alternative.

The general way of using the find command is:

An example of find command to rename

For this example, suppose that you need to rename a directory starting with “data” in your filesystem to “backupData”.

The first part of the command will find where your directory is located.

Now you know where your directory is, you can rename it by using the “execdir” option and the “mv” command.

$ find . -depth -type d -name temp -execdir mv <> backupData \;

Overwrite Forcibly If Exists

In some instances, there may be an existing directory or folder with the new name. We will need to confirm the overwrite. But this may be a daunting task if there’s a great deal of them. We can overwrite existing files and folder with -f option automatically. -f means by force.

Rename Directories using rename

Rather than using the “mv” command, you may use a dedicated built-in command, however this command might not be directly available in your distribution.

So as to rename directories on Linux, use “rename” with how you want the files to be renamed in addition to the target directory.

The general way of using rename command is:

The example command below shows how to rename all directories that have names in uppercase letters to lowercase letters:

Источник

How to Rename a Directory in Linux

In Linux and Unix-like systems, we are always amazed to see several ways for a single operation. Whether to install something or to perform through the command-line, you will get multiple utilities and commands.

Even if you want to move, copy or rename a directory, it is quite handy to perform these functions with commands; you don’t need to install any specific tool.

In Linux distributions, everything is in the form of directories. So, it is good to keep all of them in a structured way. Sometimes, we need to create temporary folders to save data and later on, to keep them permanently, we have to rename those directories.

There are no traditional commands to rename a folder/directory; it can be done using several ways. We will discuss in this guide how to change the directory name using the “mv” command and “rename” command. It might shock you that this operation can be performed using the “mv” command. The “mv” command is not only used to move one directory to another; it is a multi-purpose command which helps to rename a directory as well.

Читайте также:  Windows mobile with linux

So, let’s check how we can do use the “mv” command and “rename” command:

How to Rename a Folder Through “mv” Command

To rename a folder through the “mv” command is the simplest way you have ever seen.

Create a directory in the terminal named “temp”:

To move the “temp” directory, make another directory with the name “temp 2”:

You can see in the home directory, two directories with the given names are created:

Now, move the “temp” to the “temp2” directory using the “mv” command:

Open the “temp 2” directory to check if the “temp” directory is successfully moved:

After moving, use the “mv” command again to rename a “temp2” directory:

So, the temp2 directory has been renamed successfully to the “new_Dir” directory:

You can also confirm it using a terminal to active a “new_Dir” directory in it, and check if the “temp” directory (we created first and moved to temp2 folder is present in the “new_Dir” directory or not):

To activate a “new_Dir” folder in the terminal, use the “cd” command:

Now, to display the list of files present in the “new_Dir” folder, type the “ls” command:

How to Rename a Folder Through “rename” Command

The “rename” command is a built-in tool in most Linux distributions that helps to rename folders and directories. It uses regular expressions to perform functions.

If it is not present in your system. Use the following command:

The syntax used for the “rename” command is:

Consider the given examples to check if it’s working:

Example 1:
To rename the directories from lowercase to uppercase, run the ls command to display directories in the desktop directory:

Use the rename command with the following expressions to change letter case:

To confirm it, type “ls” again:

Example 2:
To rename the text files present in the desktop directory as pdf files, run the command:

Type the “ls” command to display the output:

You can also rename a directory through GUI by simply right click on the desired folder and navigate to the “rename” option:

Click on the “rename” option, type the name you want to update, and click to the “rename” button:

And the directory name will be changed:

Conclusion

In this write-up, we have seen how to rename a directory in Linux operating system. There are multiple ways to do it, but why choose a difficult way when the simplest approach is available.

We have learned from this guide to rename directories using the “mv” command and “rename” command. The “mv” command is considered a multi-tasking command tool whereas, using the “rename” command directories can be changed through regular expressions. We have also checked it through the GUI approach.

About the author

Syeda Wardah Batool

I am a Software Engineer Graduate and Self Motivated Linux writer. I also love to read latest Linux books. Moreover, in my free time, i love to read books on Personal development.

Источник

Оцените статью
Adblock
detector