Существенно упрощает работу с кодировками файлов пакет enca, в состав которой входит утилита enconv. Если есть файл в неизвестной кодировке, который нужно привести к удобоваримому виду, достаточно дать команду:
$ enconv file.txt
Программа самостоятельно определит текущую кодировку файла и преобразует ее к кодировке текущей локали. За все время использования у меня еще ни разу не было случая, чтобы enconv некорректно определила текущую кодировку файла.
Если необходимо преобразовать файл в кодировку отличную от текущей локали, используется параметр -x:
$ enconv -x CP1251 file.txt
В состав пакета входит утилита enca, которая позволяет определить текущую кодировку файла:
~$ enca znak.txt
Universal transformation format 8 bits; UTF-8
ОтсюдаИ ещё, если локаль консоли изменена, и тот-же mc показывает кракозябры, то можно каждое приложение запускать с параметром LANG.
Например,Вы изменили локаль консоли на koi8-r, mc- кракозябры, значит запускайте mc так:
LANG=ru_RU.UTF-8 mc