Назад | Перейти на главную страницу

zsh, zmv массовое переименование подкаталогов ничего не происходит с большим объемом каталогов

Я установил

autoload -U zmv
alias mmv='noglob zmv -W'

Когда на примере данных (~ 20 папок с подпапками) я запускаю

mmv images/**/advert images/**/notice

он работает так, как ожидалось. Но если я запускаю ту же команду для реальных данных (сотни тысяч папок), ничего не происходит. Я бегал mmv -n чтобы получить несколько сообщений, но без результата. Даже одно имя каталога было изменено, поэтому после того, как я просто завершил процесс.

Является zmv список папок кеша в качестве первого шага и чем он заменяет имена? Я ожидал этого zmv немедленно начнет менять имена dir на dir.

Должен ли я запустить mvv и просто подождать несколько часов?

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

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