
Linuxのシェルで環境変数の値を評価してコマンドを実行します。
evalコマンド検証用のファイルを作成する!
以下のファイルを準備します。
1 2 | $ cat sample_eval.txt eval |
evalコマンドで環境変数の値を評価してコマンドを実行する!
以下のシェルを準備します。CMD変数には、環境変数が環境変数名で格納されています。
1 2 3 4 5 6 7 | $ cat sample_eval.sh #!/bin/bash STR="eval" CMD="grep \$STR sample_eval.txt" echo $CMD eval $CMD |
実行してみます。$STR環境変数が、評価されてから実行されます。
1 2 3 | $ ./sample_eval.sh grep $STR sample_eval.txt eval |
おわりに
シェル内で環境変数名のままコマンドを組み立てた場合は、evalコマンドで評価してコマンドを作成して、実行させることができます。
関連記事
関連書籍(Amazon)