Porque você não colocou as instruções echo no código de script canalizado para x.sh . A segunda variante requer um echo adicional dentro do comando subshell $(...) . E a terceira variante não é válida, porque a expansão aritmética de $((...)) não funciona em números de ponto flutuante.
a2=100.
echo "
echo 1.1*$a2|bc;
echo $(echo 1.1*$a2|bc);
">x.sh
Resultado:
# sh x.sh
110.0
110.0