Existem muitas maneiras de fazer isso ... por exemplo,
sed '1!b
/^#!/a\
one_line_text
//!i\
one_line_text' infile
Observe que as barras invertidas (se houver) em sua linha precisam ter escape (por exemplo, \
se torna \
).
Isso não irá editar arquivos vazios. Além disso, isso não irá editar o arquivo no local. Consulte seu manual sed
para ver se ele suporta -i
para editar o arquivo no local (e verifique a sintaxe dessa opção).