[Comm] конвертировать из cp1251 в koi8-r
Grigory Fateyev
=?iso-8859-1?q?greg_=CE=C1_anastasia=2Eru?=
Вт Мар 29 18:26:41 MSD 2005
Hello, Nick!
29 Марта 2005г. в 16:01 You wrote:
> > Где ошибка?
> везде ;-)
>
> ставим команды по порядку и смотрим
>
> old="{}";
> iconv -c -f cp1251 -t koi8-r | new=`cat /dev/null > $old`;
> что именно iconv должен конвертировать по замыслу? на входе ничего
> нет. хорошо, old мы очистили, но что при этом должно попасть в
> new? очевидно вывод команды cat /dev/null > $old. а в нем ничего нет.
>
> mv "$old" "$new"
> при таком написании в new должно быть некое имя файла.
> кстати, зачем? Вы ведь только что очистили old, cat'нув в него
> /dev/null.
>
>
> зы. как минимум cat "$old" | iconv -c -f cp1251 -t koi8-r
> (куда оно пойдет вопрос отдельный)
>
> попробуйте для начала на естественном языке описать, как оно должно
> работать.
1. "Катим" выбранный файл по маске;
2. Перекодируем вывод п.1;
3. Записываем вывод в $new;
4. $new свою очередь обнуляет $old;
find -type f -name "*.txt" -exec bash -c 'old="{}"; cat $old |
iconv -c -f cp1251 -t koi8-r -o new=`cat /dev/null > $old` \;
Вроде должно работать? :)
--
Всего наилучшего!
greg_[at]_anastasia_[dot]_ru Григорий.
Подробная информация о списке рассылки community