変数の名前を知っているときに変数値を出力する方法を知りたいと思います。 すべての作品をまとめるには少し助けが必要です。変数の値をbashで名前で印刷する方法
私はa = Aとb = Bを持っているとしましょう。さらに、私はファイルの中にaとbのリストを持っています。そして私は、私はeval
でテストしていた
a=A
b=B
印刷したいが、私はないforループでそれを行うことができませんでした。私はeval
の結果をキャプチャすることはできませんだから、私は、私はこのように一緒に置くことができ
...と思いますが、それは...
セットアップ
$ cat f.txt
a
b
$ a=A
$ b=B
実行
を匂いfor n in `cat f.txt`
do
echo -n $n
eval echo \$$n
done
と望んでいた結果が
a=A
b=B
です私が行うことができないんだけど何
が、私は、後の値を使用する必要がある場合、それは動作しません...
は
val=`eval echo \$$n`
は後でecho $val
を行うことができるようにすることです。
:あなたは任意の追加の変数(
val
)を使用する必要はありません、それは次のようになります。もちろん、DontReadLinesWithForと[シェル変数を引用符で囲むのはいつですか](https://stackoverflow.com/questions/10067266/when-to-wrap-quotes-around-a-shell-variable) – tripleee
リンクありがとうございます。ちょうどそれを単純なままにしたかった... – Betlista
それを正しく行うことはそれほど複雑ではありません。 – tripleee