Ответ 1
Вам нужно добавить 'g' в конец вашего sed:
sed -e 's/\(.*\)ABC/\1DEF/g'
Это говорит sed, чтобы заменить каждое появление вашего регулярного выражения ( "глобально" ) вместо первого вхождения.
EDIT: Вы также должны добавить $
, если хотите убедиться, что он заменяет последнее вхождение ABC в строке:
sed -e 's/\(.*\)ABC$/\1DEF/g'