Re[4]: [Comm] Переконвертация имён файлов на ext3

Alexandr A. Alexandrov =?iso-8859-1?q?aaa_=CE=C1_inrecolan=2Ecom?=
Вс Фев 26 22:11:55 MSK 2006


Доброго времени суток!

Sunday, February 26, 2006, 3:39:24 PM, вы писали:

>> Пытался сделать всё вообще одной командой - чтобы и рекурсивно по всем
>> каталогам  пройтись. Но почему-то не удалось победить вариант, когда в
>> именах каталогов пробелы. Делал так:
>>
>> for f in `find * -print0 | xargs -0` ; do install -D "$f" ~/tmp/"`echo "$f"
>> | iconv -f CP1251 -t UTF8`" ; done
A> Тезка, не нужно делать ТАК!

  Об этом я догадываюсь. :-) Но меня интересует - КАК надо! :-)

  Пока я пришёл к варианту

  find dir/* -exec ./proc {} \;

  А в proc -

#!/bin/sh
A=`echo $1 | sed -e 's/\ /\\\ /g'`
echo $A | xargs -i% mv % `echo % | iconv -f CP1251 -t UTF8`

  Но   в   этом  варианте почему-то подстановка не работает. Причём не
понимаю,  почему.  Я  пробовал `echo % | sed -e 's/x/X/g'` на тестовых
файлах  -  чтобы не грешить на перекодировки всякие - типа, заменить в
именах  файлов  маленькие  х  на  большие просто. Так mv сообщает, что
файлы идентичны и он ничего делать не будет. :-(

-- 
С уважением,
 Александр                            mailto:aaa на inrecolan.com

Девиз дня: Не надо путать причину и следствие. Особенно не надо путать следствие.




Подробная информация о списке рассылки community