J'utilise bash pour écrire un script pour FSL, un logiciel d'imagerie. C'est tout au long de la ligne de commande, donc c'est facile à écrire.Opérateurs Bash: Quadrature d'une variable précédemment calculée, puis stockage dans une nouvelle variable
Je me bats pour pouvoir carré ma variable calculée précédemment, puis l'enregistrer comme nouvelle variable:
varStdBase=$(fslstats ${varBase%.nii.gz}_MAX100.nii.gz -S)
echo "Std Dev. is: "$varStdBase
varS1=$(echo '$varStdBase^2'|bc)
echo "variance is: "$varS1
Il devient varS1 que je suis aux prises avec. Je reçois le message d'erreur:
syntax error: invalid arithmetic operator (error token is ".886438")
J'ai aussi essayé:
varS1=$(($varStdBase**2))
et:
let varS1=$varStdBase**2
aussi:
varS1=$(echo $(($varStdBase**2)))
Et plus, tout pas de résultat ...
Je me bats difficilement pour essayer de comprendre la syntaxe que bash veut faire cette tâche simple.
Merci!
Mettez' set -x' en haut de l'écriture Ainsi, vous pouvez voir comment bash fait la substitution de variables. –
Merci! Cela aide beaucoup avec le dépannage – ramenloverli