очень странное кино... я тоже в недоумении )) обрезало чётко по переводу строки, что наводит на мысль на багу в bash, но , по словам, пробовал и в sh... а sh - это не баш?
у меня вот (на Fedora)
Александр Куракин: сорре, что сразу не спросил: а обрезанный файл? который тут bundle exec ruby process.rb > f_1 && wc f_1 f_1 (для сравнения, ибо cat f_direct > f_direct.cut у меня даёт исходный результат, то бишь без багов)
я в курсе реализации тех же циклов на низком уровне (в машинных кодах)
но C, Java, Ruby, Python, etc - языки высокого уровня, и именно для них goto считается bad practice
З.Ы. простите, но мне лениво вести беседу о best practice, когда уже всё давно рассказано до меня, с людьми (в общем случае), которые не "ищут истину", а "лишь бы потрындеть"
у меня вот (на Fedora)