Прошу заметить, что koi8-r - это кодировка, а "plain text" - это не кодировка, это просто сырой текст, поэтому вопрос немного некорректный.
Можешь посмотреть программку iconv, поддерживает кучу кодировок, хотя и тупая: следует строго указанным кодировкам, и если встречает незнакомый символ - кричит "дальше не могу" и затыкается, параметра типа --force не имеет.
Другого перекодировщика не знаю (не интересовался) :-)
я встречал две программки recode -- одна большая GNU recode, она умеет переводить из кучи форматов в кучу -- и как крошечный частный случай из win или alt в koi8, и еще как второй крошечный частный случай иметь функциональностьunix2dos/dos2unix.
Вторая recode -- маленькая, специально только для русских кодировок.