[me@home]$ sed -e '/\$xxx/r content.txt' -e '/\$xxx/d' template.txt
.,:;-+=_'"`*^?!
.,:;-+=_'"`*^?!
&$%#@|/\()[]{}<>
&$%#@|/\()[]{}<>
Первая команда ищет $xxx
, а затем печатает содержимое content.txt
. Второй удаляет $xxx
.
Вы также можете использовать многострочную команду, которая была бы более удобочитаемой при использовании в сценариях.
sed -e '/\$xxx/{
r content.txt
d
}' template.txt