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

Alexandr A. Alexandrov =?iso-8859-1?q?aaa_=CE=C1_inrecolan=2Ecom?=
Сб Фев 25 17:15:58 MSK 2006


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

Saturday, February 25, 2006, 1:10:50 AM, вы писали:

>>> Что-то не очень понятно, что сделать нужно, но, по-видимому, что-то вроде
>>> 
>>> for f in * ; do mv $f `echo $f | iconv -f KOI-8 -t UTF-8` ; done
>>> 
AF>> Только все имена лучше брать в кавычки ("$f").

AAA> Пытался сделать всё вообще одной командой - чтобы и рекурсивно по всем
AAA> каталогам  пройтись. Но почему-то не удалось победить вариант, когда в
AAA> именах каталогов пробелы. Делал так:

AAA> for f in `find * -print0 | xargs -0` ; do install -D "$f"
AAA> ~/tmp/"`echo "$f" | iconv -f CP1251 -t UTF8`" ; done

  Видимо,  не  хватает  знаний  по  шеллу..  :-( Вот что делаю, создав
тестовый каталог и тестовый файл:

[aaa на aaa test]$ find * -print | sed -e 's/.*/"&"/g'
"каталог с пробелами"
"каталог с пробелами/файл с пробелами.ф"

[aaa на aaa test]$ for f in `find * -print | sed -e 's/.*/"&"/g'`; do echo "$f" ; done
"каталог
с
пробелами"
"каталог
с
пробелами/файл
с
пробелами.ф"

  То  есть  в  шелле  пробелы получаются неэкранированными. Пробовал с
помощью  сед-а  заменить  пробелы  на  "\  "  -  но  не помогло... Как
правильно?

-- 
С уважением,
 Александр

Девиз дня: Не так страшен Карлсон, как его пропеллер...















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