[Comm] массовое переименование файлов
oleg
=?iso-8859-1?q?ulug1_=CE=C1_mail=2Eru?=
Вт Июл 15 01:42:48 MSD 2008
Доброго времени суток!
Посоветуйте, пожалуйста, программу для сабжа. Поиском не нашел. Для
работы не в графическом режиме(нет на сервере)))
И сама задача. Нужно переименовать все файлы, начинающиеся с верхнего
регистра на нижний, и, если, идет несколько букв в верхнем регистре с
самого начала названия файла, то понизить все, кроме последней. А файлов
много)) Искать в текущей директории и во всех ее поддиректорях.
Нащупал алгоритм решения, но только начинаю изучать баш, поэтому сам не
справлюсь.
1 - понизить регистр 1-й буквы всех назв. файлов
find . -type f | while read fpath; do mv "$fpath" "$(echo "$fpath"| sed
's,^\(.*/\)\(.\),\1\l\2,')" ; done (помогли на opennet.ru madskull и Андрей)
2 - искать во всех именах, где встречаются 2 или более буквы в верхнем
регистре рядом
3 - запустить цикл
а) если 3 буква в верхнем регистре
то понизить регистр 2-й буквы и продолжать обрабатывать
если нет, то не обрабатывать
б) если 4-я буква в верхнем регистре
то понизить регистр 3-ей буквы ... и т.д. до n
Помогите, плиз
Подробная информация о списке рассылки community