Файлы в которые соответствуют первому варианту обрабатываются нормально, а файлы, которые соответствуют второму варианту игнорируются. Пробовал даже такой вариант sed "s/(\([0-9]\+\).\+\([0-9]\+\))/(\1x\1)/). Результат такой же.
В чем проблема и какие пути решения?
Когда sed сталкивается с последовательностью байтов, некорректной в текущей кодировке, он прекращает работу. Единственный способ этого избежать - сделать текущей (для sed'а) такую кодировку, в которой любая последовательность байтов хоть что-то, да обозначает. Например так:
LC_ALL=C sed "s/...