como desativar a expansão de variável ao usar bash “eval”
-
27-10-2019 - |
Pergunta
oi, tenho o seguinte arquivo de propriedade (something.properties)
SERVER1_PROPERTY1=123
SERVER1_PROPERTY2=${SERVER1_PROPERTY1}/123
e o seguinte script bash buscando uma das propriedades:
#!/bin/bash
. something.properties
SRV="SERVER1"
eval PROPERTY2=\$${SRV}_PROPERTY2
echo $PROPERTY2
o resultado é:
123/123
mas eu quero que seja
${SERVER1_PROPERTY1}/123
Como posso conseguir isso?
Solução
A expansão é feita quando você origina o arquivo (. something.properties
).
Grave SERVER1_PROPERTY2='${SERVER1_PROPERTY1}/123'
em seus arquivos de propriedades para desativar a expansão.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow