Другой sed
:
s=[:space:]
sed -e:t -e$\!"N;s/john paul[$s]*george/pete/g;/\n/"\!tt -e"P;D" <in >out
Это будет обрабатывать любые / все вхождения вашей строки в однократная подстановка и только минимальный буфер, который абсолютно необходим. Он работает через скользящее окно при вводе и выполняет обратный переход для вставки новой строки только в том случае, если предыдущая подстановка успешно заменила вашу строку и, как следствие, удалила символ новой строки в процессе.
Странный !
цитирование необходимо только в (читай: безумно) интерактивной (ba | z | t? C) sh
оболочке по умолчанию, но обычно не является проблемой в оболочке со сценарием (если у вас нет варианта csh
) .
Убедитесь, что у вас установлены гостевые дополнения.
Вид > Авто -изменить размер гостевого дисплея
Вид > Масштаб > 200 %