ALT Linux Community general discussions
 help / color / mirror / Atom feed
* [Comm] массовое переименование файлов
@ 2008-07-14 21:42 oleg
  0 siblings, 0 replies; only message in thread
From: oleg @ 2008-07-14 21:42 UTC (permalink / raw)
  To: community

Доброго времени суток!
Посоветуйте, пожалуйста, программу для сабжа. Поиском не нашел. Для 
работы  не в графическом режиме(нет на сервере)))
И сама задача. Нужно переименовать все файлы, начинающиеся с верхнего 
регистра на нижний, и, если, идет несколько букв в верхнем регистре с 
самого начала названия файла, то понизить все, кроме последней. А файлов 
много)) Искать в текущей директории и во всех ее поддиректорях.
Нащупал алгоритм решения, но только начинаю изучать баш, поэтому сам не 
справлюсь.
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

Помогите, плиз




^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2008-07-14 21:42 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-07-14 21:42 [Comm] массовое переименование файлов oleg

ALT Linux Community general discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
		mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
	public-inbox-index community

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.community


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git