Como recuperar um valor de variável bash se eu tiver o nome da variável como string?
var1="this is the real value"
a="var1"
Do something to get value of var1 just using variable a.
Contexto:
Tenho algumas AMI's ( Amazon Machine Image ) e quero iniciar algumas instâncias de cada AMI. Assim que eles terminarem de inicializar, desejo configurar cada instância de acordo com seu tipo de AMI. Como não quero criar muitos scripts ou chaves secretas dentro de qualquer AMI, preparei um script de inicialização generalizado e o coloquei no S3 com um link acessível ao público. No rc.local, coloquei um pequeno pedaço de código que busca o script de inicialização e o executa. Isso é tudo o que tenho nas AMIs. Em seguida, cada AMI acessa um script de configuração comum que é aplicável a todas as AMIs e scripts de configuração especiais para cada um. Esses scripts são particulares e requerem uma URL assinada para acessá-los.
Portanto, agora, quando aciono uma instância de uma AMI (my_private_ami_1), passo uma URL assinada para mais um arquivo apresentado no S3 que contém a URL assinada para todos os scripts privados em termos de par de chave / valor.
config_url="http://s3.amazo.../config?signature"
my_private_ami_1="http://s3.amazo.../ami_1?signature"
...
Quando o script de inicialização é executado, ele baixa o arquivo acima e source
é ele. Em seguida, verifica o seu tipo de AMI e escolhe o script de instalação correto.
ami\_type=GET AMI TYPE #ex: sets ami\_type to my\_private\_ami\_1
setup\_url=GET THE SETUP FILE URL BASED ON AMI\_TYPE # this is where this problem arises
Então agora eu posso ter um código genérico que pode disparar instâncias, independentemente de seus tipos de AMI, e as instâncias podem cuidar de si mesmas.
Bad substitution
erro.