tente
sed -e '/tc_/s/$/ status=D/'
onde
-
/tc_/
na linha em que tc_ é encontrado, -
s
substituto, -
/$
fim da linha, -
/ status=D/
por esta string
se estiver correto, adicione -i
para editar no lugar.
Eu tenho um bloco de código como segue em um arquivo:
BalancerMember http://snode1:80 min=1 max=1000 loadfactor=1 timeout=30 keepalive=on route=tc_snode1
BalancerMember http://snode2:80 min=1 max=1000 loadfactor=1 timeout=30 keepalive=on route=tc_snode2
Eu quero pesquisar todas as linhas que tinham tc_
keyword e adicionar status=D
no final dessas linhas. Então, as entradas acima se tornarão assim
BalancerMember http://snode1:80 min=1 max=1000 loadfactor=1 timeout=30 keepalive=on route=tc_snode1 status=D
BalancerMember http://snode2:80 min=1 max=1000 loadfactor=1 timeout=30 keepalive=on route=tc_snode2 status=D
Estou usando o seguinte comando para conseguir isso:
sed -i '/tc_/a status=D' app.conf
Mas posso ver que status=D
está sendo depois de uma nova linha. Eu não quero uma nova linha para isso. Deve ser anexado com um ' ' (espaço).
Tags grep text-processing sed