Script Bash e bc

Estou tentando escrever um script bash e precisava fazer algumas contas de ponto flutuante. Basicamente, quero fazer algo assim:

NUM=$(echo "scale=25;$1/10" | bc)
if [ $? -ne 0 ]
then
echo bad
fi

O problema que eu estou enfrentando é $? tende a reter a saída do programa echo e não a chamada bc. Existe uma maneira de salvar a saída do programa bc em uma variável?

EDITAR:

Obrigado pelas respostas rápidas. Aqui está outra maneira de encarar o problema. Digamos que eu modifiquei um pouco o script para que fique assim:

#!/bin/bash
NUM=$(echo "scale=25;$1/10" | bc)
if [ $? -ne 0 ]
then
echo bad
exit
fi
echo "$NUM"

Quando o usuário insere um valor normal de ponto flutuante, ele funciona bem:

bash script.sh 1.0

resultado:

.1000000000000000000000000

No entanto, quando o usuário digita um valor incorreto, o script não pode se recuperar:

bash script.sh 1.0a

resultado:

(standard_in) 1: parse error

O que estou tentando fazer é fazê-lo sair normalmente.

questionAnswers(3)

yourAnswerToTheQuestion