Copie parte de uma linha de um arquivo e anexe a outro arquivo com textos extras

Copie parte de uma linha de um arquivo e anexe a outro arquivo com textos extras

Eu tenho um pequeno requisito de um script bash que copiará parte da linha de um arquivo e a anexará a outro arquivo com algum texto extra (que contém outra variável).

Exemplo

Arquivo1.txtcontente

Warning: pasting the following URL into your browser exposes the OTP secret to Google:
https://www.google.com/chartxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Your new secret key is: xxxxxxxxxxxxxxxxxxxxxx
Your verification code is xxxxxx
Your emergency scratch codes are:
  xxxxxxxx
  xxxxxxxx
  xxxxxxxx
  xxxxxxxx
  xxxxxxxx

Então preciso copiar apenas o código secreto e depois colá-lo em outro arquivo

Arquivo2.txt

secret code of user xxxxxxxxxxx is saved

Sou novo no Linux e também em scripts, então qualquer ajuda sobre isso seria muito apreciada.

Além disso, informe-me se minha consulta não estiver clara.

Responder1

Experimente este sed:

sed -n 's|Your new secret key is: \(.*\)|secret code of user \1 is saved|p' File1.txt >> File2.txt

Ele anexa o código secreto ao File1.txtarquivo File2.txt. O código secreto é o que .*corresponde e é reproduzido por \1.

informação relacionada