sed -e '/^line 2$/{r file1.txt' -e 'd;}' file2.txt
O script sed
é
/^line 2$/{
r file1.txt
d
}
A nova linha após o nome do arquivo file1.txt
é obrigatória, então dividi-la em expressões -e
separadas na linha de comando faz com que seja mais legível do que
sed '/^line 2$/{r file1.txt
d;}' file2.txt
O script procura uma linha cujo conteúdo seja line 2
. Quando isso for encontrado, o conteúdo de file1.txt
será imediatamente enviado e a linha original será excluída.
Usar sed -i
fará as alterações na linha em file2.txt
(não recomendado).