[Comm] конвертировать из cp1251 в koi8-r
Nick S. Grechukh
=?iso-8859-1?q?ngrechukh_=CE=C1_ua=2Efm?=
Вт Мар 29 17:01:11 MSD 2005
On Tue, Mar 29, 2005 at 04:41:41PM +0400, Grigory Fateyev wrote:
> Надо конвертировать группу файлов из cp1251 в koi8-r, вот нашкрябал но
> не работает.
> find -type f -name "*.txt" -exec bash -c 'old="{}"; iconv -c -f
> cp1251 -t koi8-r | new=`cat /dev/null > $old`; mv "$old" "$new"' \;
> Где ошибка?
везде ;-)
ставим команды по порядку и смотрим
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
(куда оно пойдет вопрос отдельный)
попробуйте для начала на естественном языке описать, как оно должно
работать.
Подробная информация о списке рассылки community