Массовое переименование папок linux

Содержание
  1. Переименование файлов в Linux
  2. Переименование командой mv
  3. Переименование файла
  4. Переименование директории
  5. Переименование и перемещение
  6. Переименование командой rename
  7. Изменение расширения файлов
  8. Замена пробелов на подчеркивание
  9. Конвертация имен файлов в строчные буквы
  10. Конвертация имен файлов в прописные буквы
  11. Показать, что именно будет переименовано, но не переименовывать
  12. Массовое переименование с использованием программ
  13. Как переименовать каталоги в Linux
  14. Переименование каталогов
  15. Переименование нескольких каталогов
  16. Переименование нескольких каталогов с помощью mv
  17. Переименование нескольких каталогов с rename
  18. Выводы
  19. Переименование папок в Linux
  20. Через графический интерфейс операционной системы
  21. Команда RENAME
  22. Команда MV
  23. Скрипт BASH
  24. Команда FIND
  25. Утилита GIO
  26. Массовое переименование папок linux
  27. Как переименовать папку Linux
  28. Как переименовать папку в Linux
  29. 1. Файловый менеджер
  30. 2. Команда mv
  31. 3. Команда rename
  32. 4. Скрипт Bash
  33. 5. Команда find
  34. 6. Утилита gio
  35. Выводы

Переименование файлов в Linux

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

Переименование командой mv

Команда mv (от слова move) используется для переименования или перемещения файлов и директорий из командной строки.

Синтаксис команды mv очень простой:

источник — файл(ы) или директория, которую необходимо переместить или переименовать.
назначение — файл или директория, в которую будет перемещен источник .

Основные опции:
-f — перезаписывать существующие файлы.
-n — не перезаписывать существующие файлы.
-i — выдавать запрос на перезапись существующих файлов.
-u — не перемещать файлы, которые уже существуют, если существующие файлы новее (время модификации новее).
-v — выводить имя каждого файла перед его переносом.

Как задавать имена файлов и директорий для переименования:

  • Чтобы переименовать файл с помощью команды mv нужно в качестве источника задать данный файл, а в качестве назначения указать новое имя файла.
  • Если указывается путь до файла, то директории должны совпадать, иначе файл будет перемещен в другую директорию.
  • Если в качестве источника указать файл, а в качестве назначения путь до файла в другой директории и задать новое имя файла, то файл будет перемещен в другую директорию и переименован.
  • Если в качестве источника указана директория, а в качестве назначения задано новое имя для данной директории, то директория будет просто переименована. Если же директория назначения уже существует, то директория источник будет перемещена в директорию назначения .

Переименование файла

Переименование файла myfile1.dat в файл myfile2.dat:

Переименование файла с указанием пути до файла:

Переименование директории

Переименование директории /home/pingvinus/mydir1 в директорию /home/pingvinus/mydir2 . Справедливо, если /home/pingvinus/mydir2 не существует.

Если /home/pingvinus/mydir2 существует, то, выполнив команду:

директория mydir1 будет перемещена внутрь директории /home/pingvinus/mydir2 . То есть mydir1 будет в результате находиться по адресу /home/pingvinus/mydir2/mydir1 .

Переименование и перемещение

Если в качестве файла назначения указан новый путь и новое имя файла, то файл будет перемещен и переименован. Например, следующая команда перемещает файл myfile1.dat в директорию /home/pingvinus/dir и переименовывает его в myfile2.dat :

Переименование командой rename

Команда rename служит для массового (пакетного) переименования файлов. Она позволяет выполнять замену определенных символов или частей имени файла и использованием Perl-регулярных выражений.

Если вдруг в вашем дистрибутиве нет команды rename , то ее можно установить, выполнив (выберите соответствующую команду для вашего дистрибутива):

Синтаксис команды rename :

старое_имя — регулярное выражение или часть имени файла, которое нужно заменить на новое_имя .
новое_имя — задает результирующее имя файла (может быть регулярным выражением).

Основные опции:
-f — перезаписывать существующие файлы.
-n — вывести список файлов, которые будут переименованы и их новые имена, но не выполнять переименование.
-v — вывести список обработанных файлов.

Проще всего понять, как пользоваться данной командой, на примерах.

Изменение расширения файлов

Массово изменить расширение .html на .php у всех html-файлов.

По умолчанию rename не перезаписывает существующие файлы. Чтобы существующие файлы перезаписывались, используется опция -f :

Читайте также:  Logitech webcam software linux

Замена пробелов на подчеркивание

Заменить все символы пробелов в имени файлов на символ подчеркивания:

Конвертация имен файлов в строчные буквы

Конвертация имен файлов в прописные буквы

Показать, что именно будет переименовано, но не переименовывать

Чтобы избежать ошибок при переименовании файлов, особенно при использовании сложных регулярных выражений, можно сначала вывести список того, что будет переименовано, но не запускать само переименование. Для этого служит опция -n .

Например, мы хотим изменить расширение у файлов с .jpeg на .jpg . Используем опцию -n , чтобы просто вывести какие файлы будут переименованы:

Полное описание команд mv и rename можно получить, выполнив в терминале команды:

Массовое переименование с использованием программ

Для массового переименования файлов можно воспользоваться программами:

Источник

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

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

В этой статье объясняется, как переименовывать каталоги с помощью командной строки.

Переименование каталогов

В Linux и Unix-подобных операционных системах вы можете использовать команду mv (сокращение от move) для переименования или перемещения файлов и каталогов из одного места в другое.

Синтаксис команды mv для перемещения каталогов следующий:

Например, чтобы переименовать каталог dir1 в dir2 вы должны запустить:

При переименовании каталогов вы должны указать ровно два аргумента для команды mv . Первый аргумент — это текущее имя каталога, а второй — новое имя.

Важно отметить, что если dir2 уже существует, dir1 перемещается в каталог dir2 .

Чтобы переименовать каталог, которого нет в текущем рабочем каталоге, необходимо указать абсолютный или относительный путь:

Переименование нескольких каталогов

Переименование одного каталога — простая задача, но переименование сразу нескольких каталогов может быть проблемой, особенно для новых пользователей Linux.

Одновременное переименование нескольких каталогов требуется редко.

Переименование нескольких каталогов с помощью mv

Команда mv может переименовывать только один файл за раз. Однако его можно использовать в сочетании с другими командами, такими как find или внутренние циклы, для одновременного переименования нескольких файлов.

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

Давайте проанализируем код построчно:

  • Первая строка создает цикл и выполняет итерацию по списку всех файлов.
  • Вторая строка проверяет, является ли файл каталогом.
  • Третья строка добавляет текущую дату в каждый каталог.

Вот решение той же задачи с использованием mv в сочетании с find :

Команда find передает все каталоги в mv один за другим с помощью параметра -exec . Строка <> — это имя обрабатываемого в данный момент каталога.

Как вы можете видеть из примеров, переименование нескольких каталогов с помощью mv — непростая задача, поскольку для этого требуется хорошее знание сценариев Bash.

Переименование нескольких каталогов с rename

Команда rename используется для переименования нескольких файлов и каталогов. Эта команда более сложна, чем mv поскольку требует базовых знаний регулярных выражений.

Есть две версии команды rename с разным синтаксисом. Мы будем использовать Perl-версию команды rename . Файлы переименовываются в соответствии с заданным регулярным выражением Perl .

В следующем примере показано, как заменить пробелы в именах всех каталогов в текущем рабочем каталоге символами подчеркивания:

На всякий случай передайте параметр -n для rename чтобы выводить имена переименовываемых каталогов без их переименования.

Вот еще один пример, показывающий, как преобразовать имена каталогов в нижний регистр:

Выводы

Мы показали вам, как использовать команды mv для переименования каталогов.

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.

Источник

Переименование папок в Linux

Собрали несколько способов переименования папок в Linux. Выбирайте тот, который удобнее.

Через графический интерфейс операционной системы

При наличии графического интерфейса операционной системы переименовать папку очень просто. Достаточно кликнуть правой кнопкой мыши по нужной папке и выбрать в контекстном меню пункт Переименовать.

После этого достаточно будет ввести новое имя папки и нажать Enter.

Читайте также:  Биллинг система для linux

Команда RENAME

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

rename [регулярное_выражение] [файл(ы)_папка(и)]

Допустим, мы хотим переименовать папку /home/test/Документы/Папка/ в /home/test/Документы/Папка2/:

Через использование регулярных выражений можно организовать и массовое переименование или массовую замену заглавных и строчных букв. Пример ниже заменит все заглавные латинские буквы в названиях папок в каталоге /home/test/Документы/ на строчные. Заметьте, именно латинские буквы.

Если хотите предварительно просмотреть результаты переименования, добавьте ключ -n .

Такая команда не переименует папки.

Кстати, одноимённая команда есть и в Windows.

Команда MV

Прямое предназначение команды mv — перемещение файлов и папок, но использовать её можно и для переименования. Если при использовании команды mv не менять местоположение файла или папки, то произойдёт переименование.

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

Как видите, здесь мы переименовали каталог /home/test/Документы/Папка/ в /home/test/Документы/Папка2/.

Если в имени или пути встречаются пробелы, то нужно использовать кавычки.

Скрипт BASH

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

Этот скрипт добавит к именам всех каталогов «_newname» в той директории, где он был запущен. На забудьте дать файлу скрипта права на выполнение.

Команда FIND

Массовое переименование папок можно организовать и через команду find . Она используется для поиска и выполнения действий с найденными файлами и папками. Этим действием может быть и переименование.

Пример выше ищет каталоги, в наименовании которых встречается «Primer», и добавляет к их названию «_newname».

Утилита GIO

Утилита GIO позволяет выполнять те же действия, что доступны через утилиты MV и RENAME, но с использованием подсистемы GVFS. Для переименования папок можно использовать команды gio move и gio rename . Например:

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

Источник

Массовое переименование папок linux

Итак, у нас есть куча файлов, среди которых надо навести порядок. Для этого сделаем групповое переименование.

Rename

Утилита rename входит в стандартную поставку Debian, так что начнем с нее.

rename [ -v ] [ -n ] [ -f ] perlexpr [ files ]

-v отобразить имена успешно переименованных файлов.

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

-f перезаписать уже существующие файлы.

perlexpr — шаблон для переименования.

Для того, чтобы выполнить переименование файлов согласно условию, выполним команду:

# rename ‘s/.sh/.sh.bak/g’ *.sh

Рассмотрим perlexr подробнее:

s=указывает, что требуется замещение.

/.sh/=Строка, которую будем замещать.

/.sh.bak/ = строка, на которую будем замещать

g=global, будем замещать все найденные вхождения.

С помощью rename можно быстро изменить регистр файлов. Например поднимем регистр файлов из примера:

MMV

mmv — программа для массового перемещения, переименования, копирования, объединения файлов.

По умолчанию она не включена в состав Debian. Поставим ее:

# apt-get install mmv

Наша задача решается одной строкой:

MV

Теперь решим нашу задачу стандартной командой mv. Для этого нам прийдется немного попрограммировать в bash.

for i in *.sh;
do mv $i `basename $i sh`sh.bak;
done

Попробуем усложить задачу. Например у нас есть куча файлов JPG:

1234234.jpg
e456567657.jpg
234df34.jpg

Мы хотим привести их к следующему виду:

file1.jpg
file2.jpg
file3.jpg

j=0;
for i in *.jpg;
do let j+=1;
mv $i file$j.jpg ;
done

В любимом многими mc, процесс переименования по маске выполняется просто и непринужденно в два действия.

1. Через + выбираем файлы по маске *.sh

2. Нажимаем F6 и в destination указываем *.sh.bak

Все примеры, приведенные выше, так или иначе работают во всех Linux, BSD, Mac OS, если стоят соответствующие утилиты.

Читайте также:  Windows server маршрутизация локальной сети

Источник

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

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

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

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

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

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

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

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

2. Команда mv

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

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

Чтобы переименовать папку

/Музыка/Папка 1 в Папка 11 используйте:

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

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

3. Команда rename

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

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

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

sudo apt install rename

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

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

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

4. Скрипт Bash

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

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

» «$_new»
fi
done

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

chmod ugo+x dir_rename.sh

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:

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

Выводы

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

Источник

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