私はbashを使ってイメージングソフトウェアであるFSLのスクリプトを書いています。それはすべてのコマンドラインを介してだから、それはスクリプトに簡単です。Bash演算子:以前に計算された変数を分割して新しい変数に格納する
私は以前に計算された変数を二乗し、新しい変数として保存することができるように苦労しています:
varStdBase=$(fslstats ${varBase%.nii.gz}_MAX100.nii.gz -S)
echo "Std Dev. is: "$varStdBase
varS1=$(echo '$varStdBase^2'|bc)
echo "variance is: "$varS1
それは私が苦労することをvarS1を取得しています。私も試してみた
syntax error: invalid arithmetic operator (error token is ".886438")
:
varS1=$(($varStdBase**2))
と:また
let varS1=$varStdBase**2
:
varS1=$(echo $(($varStdBase**2)))
そしてより多くの、すべての私は、エラーメッセージが出続けます役に立たなかった...
私は、bashがこの単純なタスクを実行したいという構文を理解しようと努力しています。
ありがとうございます!
スクリプトの先頭に-x'設定 '入れbashがどのように変数置換を行っているかを見ることができます。 –
ありがとう!これはトラブルシューティングで多くを助ける – ramenloverli