Em outras palavras, você deseja inserir a linha ----------
antes de cada linha que contém uma data YYYY.MM.DD seguida por um espaço e várias letras minúsculas.
Existem várias maneiras de fazer isso. Você pode usar o comando insert ( i
):
sed -e '/^[0-9][0-9][0-9][0-9]\.[0-9][0-9]\.[0-9][0-9] [a-z][a-z]*$/ i \
----------'
Ou você pode substituir a string vazia no começo da linha por uma nova linha.
sed -e '/^[0-9][0-9][0-9][0-9]\.[0-9][0-9]\.[0-9][0-9] [a-z][a-z]*$/ s/^/----------\
'
Ou você pode usar &
no texto de substituição de um comando s
para representar o padrão correspondente.
sed -e 's/^[0-9][0-9][0-9][0-9]\.[0-9][0-9]\.[0-9][0-9] [a-z][a-z]*$/----------\
&'
Algumas implementações sed
permitem que você escreva \n
em vez de barra invertida-nova linha no texto de substituição, mas em outros \n
imprime \n
ou n
.