Переименование файлов в Linux — это то, что мы все делаем, будь то для лучшей организации файлов или для массового переименования файлов.
Помимо базовых инструментов, таких как mv и rename, существует продвинутый инструмент под названием mmv
, который значительно упрощает процесс, особенно когда вам нужно переименовать несколько файлов одновременно.
Будучи опытными пользователями Linux, мы обнаружили, что mmv
— это мощный инструмент для пакетного переименования файлов, и в этой статье мы покажем вам, как эффективно его использовать.
mmv
multiple move — это утилита командной строки, которая позволяет переименовывать, перемещать и копировать несколько файлов одновременно. В отличие от команды mv
, которая отлично подходит для переименования одного файла за раз, mmv
предназначена для массового переименования с лёгкостью.
Чтобы установить mmv
в Linux, используйте следующую команду для конкретного дистрибутива Linux.
sudo apt install mmv [В Debian, Ubuntu and Mint] sudo yum install mmv [В RHEL/CentOS/Fedora и Rocky/AlmaLinux] sudo emerge -a sys-apps/mmv [В Gentoo Linux] sudo apk add mmv [В Alpine Linux] sudo pacman -S mmv [В Arch Linux] sudo zypper install mmv [В OpenSUSE] sudo pkg install mmv [В FreeBSD]
Основной синтаксис mmv
таков:
mmv [параметры] source_pattern target_pattern
source_pattern
: Это шаблон, который соответствует файлам, которые вы хотите переименовать.target_pattern
: Вот как вы хотите, чтобы переименованные файлы отображались.
Например, если вы хотите переименовать все файлы .txt
в файлы .md
, вы можете использовать:
mmv '*.txt' '#1.md'
Здесь #1
относится к части имени файла, на которую указывает подстановочный знак *
.
Вот несколько продвинутых примеров того, как эффективно использовать mmv
:
Допустим, у вас есть несколько файлов, таких как file1.txt, file2.txt, file3.txt и так далее, и вы хотите переименовать их в document1.txt, document2.txt, document3.txt и так далее.
Вот как вы можете это сделать:
mmv 'file*.txt' 'document#1.txt'
В этом примере:
file*.txt
соответствует всем файлам, начинающимся с file
и заканчивающимся на .txt
.document#1.txt
переименовывает их в document1.txt
, document2.txt
и т.д.
Допустим, вы хотите добавить префикс или суффикс к группе файлов. Например, у вас есть файлы image1.jpg, image2.jpg, image3.jpg, и вы хотите добавить префикс 2025_
к каждому из них.
Вот как вы это делаете:
mmv '*.jpg' '2025_#1.jpg'
Это позволит переименовать файлы в 2025_image1.jpg, 2025_image2.jpg и т. д.
Если вы хотите добавить вместо этого суффикс, вы могли бы использовать:
mmv «*.jpg» «#1_2025.jpg»
Это позволит переименовать файлы в image1_2025.jpg, image2_2025.jpg и т. д.
mmv
поддерживает регулярные выражения, поэтому вы можете использовать их для сопоставления сложных шаблонов. Например, предположим, что у вас есть файлы data_01.txt, data_02.txt, data_03.txt, и вы хотите удалить ведущие нули в числах.
Вы можете сделать это с помощью:
mmv 'data_0*.txt' 'data_#1.txt'
Если у вас есть файлы в подкаталогах и вы хотите переименовать их, вы можете использовать опцию -r
для рекурсивного переименования файлов. Например, если вы хотите переименовать все файлы .txt
в текущем каталоге и во всех подкаталогах:
mmv -r «*.txt» «#1.txt»
При этом будут переименованы все .txt
файлы в текущем каталоге и его подкаталогах.
Переименование файлов в Linux не должно быть утомительной задачей. С помощью mmv
вы можете легко переименовывать несколько файлов по сложным шаблонам, экономя время и силы. Если вам нужно добавить префикс, изменить расширения или массово переименовать файлы, mmv
поможет вам.
Попробуйте и дайте мне знать, как это работает у вас! Если у вас есть какие-либо вопросы или вам нужна дополнительная помощь, не стесняйтесь оставлять комментарии ниже.