Как вы уже знаете, мы используем команду mv для переименования или перемещения файлов и каталогов в Unix-подобных операционных системах. Но команда mv не будет поддерживать переименование нескольких файлов одновременно. Не волнуйтесь. В этом уроке мы научимся переименовывать несколько файлов одновременно с помощью команды «mmv» в Linux. Эта команда используется для перемещения, копирования, добавления и переименования файлов с использованием стандартных подстановочных знаков в Unix-подобных операционных системах.
Утилита mmv доступна в репозиториях по умолчанию систем на базе Debian. Чтобы установить его на Debian, Ubuntu, Linux Mint, выполните следующую команду:
$ sudo apt-get install mmv
Скажем, у вас есть следующие файлы в вашем текущем каталоге.
$ ls a1.txt a2.txt a3.txt
Теперь вы хотите переименовать все файлы, начинающиеся с буквы «a» на «b». Конечно, вы можете сделать это вручную через несколько секунд. Но подумайте, есть ли у вас сотни файлов и хотите их переименовать? Это довольно трудоемкий процесс. Здесь команда mmv приходит в помощь.
Чтобы переименовать все файлы, начиная с буквы «a» до «b», просто запустите:
$ mmv a \ * b \ # 1
Давайте проверим, были ли файлы переименованы или нет.
$ ls b1.txt b2.txt b3.txt
Как вы можете видеть, все файлы начинаются с буквы «a» (то есть a1.txt, a2.txt, a3.txt) переименовываются в b1.txt, b2.txt, b3.txt.
Объяснение
В приведенном выше примере первым параметром (a \ *) является шаблон «from», а второй параметр «to» (b \ # 1). В соответствии с приведенным выше примером, mmv будет искать любые имена файлов с буквой «a» и переименовывать сопоставленные файлы в соответствии со вторым параметром, то есть шаблоном «to». Мы используем подстановочные знаки, такие как ‘*’, ‘?’ и ‘[]’, чтобы соответствовать одному или нескольким произвольным символам. Помните, что вы должны избегать символов подстановки, иначе они будут расширены оболочкой, а mmv не поймет их.
«# 1» в шаблоне «to» является индексом подстановки. Он соответствует первому шаблону, найденному в шаблоне «from». «# 2» в шаблоне «to» будет соответствовать второму подстановочному знаку и так далее. В нашем примере у нас есть только один шаблон (звездочка), поэтому мы пишем # 1. И, хэш-знак также должен быть экранирован. Кроме того, вы можете заключить шаблоны с кавычками.
Вы даже можете переименовать все файлы с определенным расширением на другое расширение. Например, чтобы переименовать все .txt- файлы в формат .doc в текущем каталоге, просто запустите:
$ mmv \ *. txt \ # 1.doc
Вот еще один пример. Скажем, у вас есть следующие файлы.
$ ls abcd1.txt abcd2.txt abcd3.txt
Вы хотите заменить первое вхождение abc на xyz во всех файлах в текущем каталоге. Как бы вы поступили?
Просто.
$ mmv '* abc *' '# 1xyz # 2'
Обратите внимание, что в приведенном выше примере я включил шаблоны в одинарные кавычки.
Давайте проверим, действительно ли «abc» заменено на «xyz» или нет.
$ ls xyzd1.txt xyzd2.txt xyzd3.txt
Видеть? Файлы abcd1.txt , abcd2.txt и abcd3.txt были переименованы в xyzd1.txt , xyzd2.txt и xyzd3.txt .
Еще одна заметная особенность команды mmv — вы можете просто распечатать вывод вместо переименования файлов с помощью опции -n, как показано ниже.
$ mmv -na \ * b \ # 1 a1.txt -> b1.txt a2.txt -> b2.txt a3.txt -> b3.txt
Таким образом, вы можете просто проверить, что действительно сделало команду mmv, прежде чем переименовывать файлы.
Для получения дополнительной информации см. Справочные страницы.
$ man mmv
Обновить:
Файловый менеджер Thunar имеет встроенную опцию массовое переименование по умолчанию. Если вы используете thunar, гораздо проще переименовывать файлы, чем использовать команду mmv.
Thunar доступен в репозиториях по умолчанию для большинства дистрибутивов Linux.
Чтобы установить его в системах на базе Arch, выполните:
$ sudo pacman -S thunar
На RHEL CentOS:
$ sudo yum install thunar
На Fedora:
$ sudo dnf install thunar
На openSUSE:
$ sudo zypper install thunar
На Debian, Ubuntu, Linux Mint:
$ sudo apt-get install thunar
После установки вы можете запустить утилиту массового переименования из меню или из панели запуска приложений. Чтобы запустить его из терминала, используйте следующую команду:
$ thunar -B
Вот как выглядит массовое переименование.
Щелкните знак плюса и выберите список файлов, которые вы хотите переименовать. Массовое переименование может переименовать имя файлов, суффикс файлов или имя и суффикс файлов. В настоящее время Thunar поддерживает следующие массовые переименования:
Когда вы выберете один из этих критериев из списка выбора, вы увидите предварительный просмотр изменений в столбце «New Name» , как показано на следующем скриншоте.
После выбора критериев нажмите «Rename Files», чтобы переименовать файлы.
Вы также можете открыть массовый renamer из Thunar, выбрав два или более файлов. После выбора файлов нажмите F2 или щелкните правой кнопкой мыши и выберите «Rename» .
И это все на данный момент. Надеюсь, это было полезно. Будьте на связи!