MATCH1.MATCH2 {
always same MATCH3
}
Todos os três MATCH
devem corresponder.
entrada:
foo.bar {
always same bus
}
1.2 {
always same 3
}
a.b {
always same c
}
i.ii {
always same iii
}
b.2 {
always same c
}
1.2 {
always same b
}
digamos que eu queira excluir 1
e a entrada MATCH(es) (do nome até a chave de 2
fechamento )3
}
saída:
foo.bar {
always same bus
}
a.b {
always same c
}
i.ii {
always same iii
}
b.2 {
always same c
}
1.2 {
always same b
}
Tentei várias abordagens, sed
mas nenhuma delas me levou perto:
sed "/$match1\.$match2/{/$match3//d;}" ./input
sed "/^$match1\.$match2 {/,/^always same $match3/d" ./input
# ...
Eu tive muita dificuldade com o fato de haver duas linhas que precisam ser correspondidas. Tentei adicionar \n
e .*
no meio, mas sem sucesso.
Aqui está o que usei para excluir a entrada correspondendo apenas à primeira linha, se isso ajudar:
sed "/^$match1\.$match2 {/,/^}/d" ./input # no match3