Да, работает, не понятно почему предыдущий вариант багится.
Потому, что кавычки, конечно -это раз.
А вообще в Bash переменные не имеют типа, поэтому и присваивание посредством let.
А так, получается, у вас вызывается 3(
три) программы для обработки (
echo+date+bc) переменной вместо 1(одной).
Почитайте Mendel Cooper Advanced Bash-Scripting Guide, можно найти переводы в сети.
Хотя в примерах
фирэфохэ, конечно, выглядит весомее...