As variáveis do shell são strings, não números. Quando você digita 2
ou "0.2224"
, ele é visto como uma string. O shell pode manipular algumas conversões de dados simples, portanto expressões decimais podem funcionar; mas os valores de ponto flutuante não funcionarão.
Para fazer matemática no shell, você pode canalizar os valores através de bc
e combiná-los com a substituição de comandos (os invólucros de backtick ao redor do comando):
set d = 2
set result = 'echo "$d * 0.2224" | bc'
echo $result
A sintaxe deste exemplo foi escrita para csh/tcsh
, mas o princípio também funciona em bash
. Se você precisar de algo mais complicado do que isso, talvez queira implementar seu script em python
.