Adicione hiperlink a todos os dados da primeira coluna usando o script Bash

Adicione hiperlink a todos os dados da primeira coluna usando o script Bash

Eu tenho arquivos de log que estou filtrando para obter alguma saída como

WI_1_test  pass
WI_2_test fail
WI_3_test pass

Quero fazer com que todos os dados da primeira coluna tenham um hiperlink clicável... basicamente apontando para um URL exclusivo para cada teste.

com festa.

mais explicação! Eu tenho um arquivo de log de resultados de testes e quero preparar um relatório a partir do log confuso. estou usando o awk para filtrar a passagem WI_1_test acima ..etc. e abaixo está o meu código.

awk '/rtest.rosunit-rtest/' logfilefromjenkins.txt | sed 's/^.*\(WI\).\([0-9]*\)..\([a-Z]*\).*/\1-\2,\3/g'|awk 'BEGIN{OFS="\t"}$1="http://testspec.net/#/project/workitem?id="$1'|sort  > testreport.csv    . 

assim => meu resultado atual depois de executar o código acima está exibindo apenas os diferentes links na primeira coluna.

http://testspec.net/#/project/workitem?id=WI_1_test , pass

http://testspec.net/#/project/workitem?id=WI_2_test , fail

enquanto isso, meu objetivo final é ter todos os dados mostrados acima na primeira coluna apontando para URLs exclusivos, de modo que quando eu exportar um relatório em PDF. apenas clicando em qualquer um dos testes da primeira coluna o usuário pode ser redirecionado para a url de teste no sistema.

Esta é minha expectativa para todos os dados da coluna 1:

WI_1_teste, passar

WI_2_teste, falhar

Responder1

não é bonito, mas você pode modificar sua expressão awk assim

awk 'BEGIN{OFS="\t"}$1="["$1"](http://testspec.net/#/project/workitem?id="$1")"'

a saída deve ficar assim

[WI_1_test](http://testspec.net/#/project/workitem?id=WI_1_test) , pass

[WI_2_test](http://testspec.net/#/project/workitem?id=WI_2_test) , fail

que é a sintaxe de markdown para links clicáveis

você também deve poder fazer isso diretamente no sed.

talvez assim

sed 's/^.*\(WI\).\([0-9]*\)..\([a-Z]*\).*/[\1-\2](http:\/\/...=\1-\2),\3/g'

talvez você precise escapar dos colchetes e parênteses. não posso testar porque não tenho seus dados de entrada. também não entendo completamente sua expressão sed porque deveria haver um travessão na saída, mas não há nenhum na saída de exemplo.

informação relacionada