Моим вопросом является почти то же, поскольку они, однако, его решение не работают мой на мой случай. Я хотел бы удалить дублированное расширение (в моем случае .zip.zip
) и имейте только один (т.е. .zip
). Я попробовал:
rename 's/.zip/.zip$/.zip/' *.zip.zip
и
find . -depth -name "*.zip.zip" -exec rename 's/\.zip\.zip$/.zip/' {} +
Но в обоих случаях не был переименован никакой файл.
Рекурсивно переименование файлов с помощью globstar и переименовывает:
$ shopt -s globstar; rename 's/\.zip$//' **/*.zip.zip
Переименование файлов с помощью mmv:
$ mmv ';*.zip.zip' '#1#2.zip'
12 ^ ^
;
файлы соответствий на любой глубине в дереве каталогов.*
Соответствия любой символьный нуль или больше раз.#
Ссылки на энный подстановочный символ в от шаблона.Следующее добилось цели.
find . -depth -name "*.zip.zip" -exec sh -c 'mv "$1" "${1%.zip.zip}.zip"' _ {} \;