Обзор
mmv — это сокращение от 'mass move', утилита, предназначенная для одновременной обработки нескольких файлов. В отличие от `mv`, которая в основном используется для перемещения/переименования отдельных файлов, mmv использует шаблоны с подстановочными знаками, такие как `*.jpeg`, для определения исходного набора файлов и преобразования их в новый шаблон для создания целевого набора файлов. В частности, в то время как `rename` сосредоточен на функции переименования, `mmv` имеет преимущество в интеграции функций копирования (`cp`), создания ссылок (`ln`) и перемещения (`mv`).
Основные особенности
Основные особенности команды mmv:
- Пакетная обработка нескольких файлов с использованием шаблонов с подстановочными знаками.
- Предоставляет интегрированные функции для перемещения (
mv), копирования (cp), создания ссылок (ln) и переименования файлов. - Аналогична
rename, но имеет более широкий функционал и интуитивно понятна в использовании. - Выводит предупреждающее сообщение при возникновении конфликтов, предотвращая ошибки.
Различия между mmv и rename
mmv и rename используются для пакетного изменения имен файлов, но имеют различия в работе.
- mmv: Использует подстановочные знаки (
*,?,[ ]) для определения шаблонов и перестраивает захваченные части с помощью чисел (#1, #2). Также предоставляет функции копирования/перемещения/создания ссылок. - rename: Специализируется на переименовании с использованием регулярных выражений Perl (
s/pattern/replacement/).
Основные опции
Команда mmv позволяет управлять детальным поведением через методы обработки файлов и опции.
1) Опции обработки файлов
2) Сопоставление шаблонов
Сгенерированная команда:
Комбинируйте команды.
Описание:
`mmv` Запускает команду.
Комбинируйте эти опции, чтобы виртуально выполнять команды с помощью ИИ.
Примеры использования
Изучите функциональность команды mmv с помощью различных примеров использования.
Изменение расширения файла
mmv '*.jpeg' '#1.jpg'
Изменяет все расширения `.jpeg` на `.jpg` в текущей директории.
Добавление префикса к имени файла
mmv '*.txt' 'doc_#1.txt'
Добавляет префикс `doc_` ко всем файлам `.txt`.
Перемещение в директорию
mmv '*.log' '/var/log/#1.log'
Перемещает все файлы `.log` из текущей директории в директорию `/var/log`.
Изменение регистра
mmv '*.*' '#l1.#l2'
Изменяет регистр букв в именах файлов с верхнего на нижний.
Предварительный просмотр результата изменений
mmv -n '*.bak' '#1.old'
Проверяет результат изменения расширения `.bak` на `.old` без фактического изменения файлов.
Установка
mmv не входит в стандартную поставку большинства дистрибутивов Linux, поэтому его необходимо установить с помощью следующих команд.
Debian/Ubuntu
sudo apt update
sudo apt install -y mmv
RHEL/CentOS/Fedora
sudo dnf install -y mmv
Arch Linux
sudo pacman -S mmv
Советы и примечания
Здесь собраны важные моменты, на которые следует обратить внимание при использовании команды mmv.
Советы
- Синтаксис шаблонов mmv аналогичен подстановочным знакам оболочки.
*означает любую строку,?— один символ.*вfrom_patternможно ссылаться как#1,#2и т.д. вto_pattern. - В случае конфликта имен файлов
mmvпо умолчанию не выполняет операцию и выводит предупреждение. Вы можете использовать опцию-fдля игнорирования конфликтов и принудительной перезаписи, но будьте осторожны, чтобы не потерять данные. - Чтобы предотвратить расширение регулярных выражений и шаблонов с подстановочными знаками оболочкой, обязательно заключайте строки шаблонов в одинарные кавычки (
').