Tenho alguns arquivos que residem em um sistema Linux, contendo alguns espaços reservados como este arquivo abaixo:
teste.txt:
This is a line with <VARIABLE1>@<VARIABLE2>.
This is a line with <VARIABLE3>.
This is a line with <VARIABLE_UNKNOWN>.
This is another line contains a<b.
Quero alterar este arquivo mostrando como abaixo:
This is a test line with $VARIABLE1@$VARIABLE2.
This is a test line with $VARIABLE3.
This is a test line with $VARIABLE_UNKNOWN.
This is another line contains a<b.
Observe que todas essas variáveis fechadas <>
contêm apenas letras maiúsculas, dígitos e sublinhados.
Eu poderia ter usado o seguinte método, mas a<b
se tornou a$b
.
file_contents=$(<$file_path)
file_contents=${file_contents//</$}
file_contents=$(echo "$file_contents" | tr -d '>')
echo "$file_contents" > test.txt
Estou tentando evitar um sed
comando complexo que se torna muito difícil de depurar. Como posso conseguir isso?