変数名を文字列として持っている場合、bash変数の値を取得するにはどうすればよいですか?
var1="this is the real value"
a="var1"
Do something to get value of var1 just using variable a.
環境:
いくつかのAMI(Amazon Machine Image)があり、各AMIのいくつかのインスタンスを起動したいと思います。起動が完了したらすぐに、AMIタイプに従って各インスタンスをセットアップしたいと思います。AMI内で大量のスクリプトや秘密鍵を焼きたくないので、一般化された起動スクリプトを用意し、それを公にアクセス可能なリンクを使用してS3に配置しました。rc.localに、起動スクリプトをフェッチして実行する小さなコードを入れました。これがAMIにあるすべてです。次に、各AMIは、すべてのAMIに適用可能な共通の構成スクリプトと、それぞれの特別なセットアップスクリプトにアクセスします。これらのスクリプトはプライベートであり、アクセスするには署名付きURLが必要です。
そこで、AMIのインスタンス(my_private_ami_1)を起動するときに、すべてのプライベートスクリプトの署名付きURLを含む、S3に提示されたもう1つのファイルの署名付きURLをキーと値のペアで渡します。
config_url="http://s3.amazo.../config?signature"
my_private_ami_1="http://s3.amazo.../ami_1?signature"
...
起動スクリプトが実行されると、上記のファイルがダウンロードされますsource
。次に、そのAMIタイプをチェックし、それ自体に適切なセットアップスクリプトを選択します。
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
これで、AMIタイプに関係なくインスタンスを起動できる汎用コードを作成できるようになり、インスタンスが自分で処理できるようになりました。
Bad substitution
エラーになります。