
Может ли mmv, утилита массового перемещения, корректно переименовывать файлы из:
- фу.txt
- бар.txt
- баз.txt
к:
- 1.txt
- 2.txt
- 3.txt
Страница руководства интригует, но я не совсем следую инструкциям:
Rename all *.jpeg files in the current directory to *.jpg:
mmv '*.jpeg' '#1.jpg'
Можно ли #1
задать переменной целое число, которое увеличивается? Хотя я не сомневаюсь, что это возможно, так же ли легко (или сложно) просто использовать bash или другой скрипт?
Игнорируем возможную проблему перезаписи 1.txt
для простоты. Или скопируйте в подкаталог.
смотрите также:
https://stackoverflow.com/questions/3211595/
решение1
У меня нет этой программы в системе — на самом деле, я не помню, чтобы я когда-либо слышал о ней — но я читалэта копия страницы руководства, и, похоже, программа не включает в себя функциональность, которую вы хотите. Однако, если вы особенно хотите сделать это с mmv
, вы можете попробовать это:
mmv -an "*.txt" bogus.target > /tmp/mmv.list
The -n
говорит mmv
не делать никаких ходов, а просто сообщить, что бы он сделал, если бы вы не указали -n
. The -a
говорит ему добавить все текстовые файлы в один файл bogus.target
— на самом деле, страница руководства дает очень похожий пример (но без опции -n
) — я использую его здесь просто для того, чтобы убедить mmv
разрешить нескольким исходным файлам сталкиваться в одну цель. Это должно создать /tmp/mmv.list
файл, который выглядит примерно так:
bar.txt -> bogus.target
baz.txt -> bogus.target
foo.txt -> bogus.target
(Я предполагаю, что он перечислит файлы либо в лексикографическом (алфавитном) порядке, либо в порядке каталогов (который может показаться произвольным). Если вам нужен какой-то другой порядок, вам нужно будет найти способ указать его.) Затем обработайте файл (например, с помощью скрипта, TBD), чтобы заменить вхождения на bogus.target
, 1.txt
, 2.txt
, 3.txt
и т. д. Затем выполните
mmv < /tmp/mmv.list
Предостережения: Я этого не пробовал (поскольку, как я уже сказал, у меня даже нет программного обеспечения). Вероятно, вам следует сначала провести пробный запуск на некоторых неважных файлах и/или сделать резервную копию всех ваших файлов, прежде чем делать это.
Обратите внимание также, что это, вероятно, по крайней мере столько же работы, сколько и некоторые из ответов на вопросы, на которые вы ссылались. Как я уже сказал, я предлагаю это предложение на тот случай, если вы особенно хотите сделать это с mmv
.
P.S. Мой ответ (выше) был частично вдохновленВот этот.