Em sed
, supondo que sua lista esteja em um arquivo chamado file
, você poderia usar:
sed -n '/ss: /N;s/\n//;s/IP address:/This computer ip address is/;s/Computer name:/ and is under the name/p' file
-
-n
não imprime nada até pedirmos -
/ss: /
encontra o padrãoss:
(para corresponder às linhas comIP address:
) -
N
leu a próxima linha também para que possamos nos juntar a eles -
;
separa comandos, como no shell -
s/old/new/
replaceold
comnew
-
s/\n//
exclui a nova linha entre as duas linhas -
p
imprime as linhas em que trabalhamos
Quando você vir o que deseja, repita o comando adicionando > newfile
no final para gravar o arquivo modificado em newfile
Mais claramente:
sed -n '{
/ss: /N
s/\n//
s/IP address:/This computer ip address is/
s/Computer name:/ and is under the name/p
}' file | tee newfile
( tee
escreve com ajuda no newfile
e exibe a saída ao mesmo tempo)