Символьная перекодировка
В Internet можно найти множество программ, перекодирующих кириллические тексты. Каждая из них имеет свою изюминку и отличается степенью поддержки кириллицы.
Утилиты перекодировки должны быть стандартными. В нашем, частном, случае такой "стандартной" утилитой является iconv (входит в поставку glibc) или GNU recode.
Например, чтобы перекодировать из cp1251 в UTF-8, следует сказать:
$ iconv -fCP1251 -tKOI8-R -o<outfile> infile
или
$ recode CP1251..KOI8-R winfile.txt
Внимание!: Для перекодировки в/из KOI8-U в GNU recode надо использовать UTF-8u, под koi8-u программа понимает что-то другое.
Если же, кроме, собственно, перекодировки требуется автоматически определить исходную кодовую страницу, то можно воспользоваться утилитой 2k.
В конце концов сгодится обычный lynx (links) (cp1251 в UTF-8):
$ lynx -assume_local_charset cp1251 file.txt