Необъяснимая ошибка в bash: команда printf внутри скрипта возвращает «неверный номер»

Я могу'т получитьprintf напечатать переменную с дескриптором% e в bash-скрипте. Было бы просто сказать

#!/bin/bash
a=14.9
printf %e 14.9;

Я знаю, что это, вероятно, очень простой вопрос, но ям довольно плохо знаком с Bash и всегда используетсяecho, Плюс я не могнигде не могу найти ответ.

когда бегу я получаю

$ ./test.text
./test.text: line 3: printf: 14.9: invalid number
0,000000

поэтому моя проблема - это переменная локали LC_NUMERIC: она установлена так, что я использую запятые в качестве десятичных разделителей. Действительно, он настроен на европейскую локализацию:

$ locale | grep NUM
LC_NUMERIC="it_IT.UTF-8"

Я думал, что установил его на en_US.UTF-8, но, очевидно, я нет. Теперь проблема переключается, чтобы найти, как установить мою переменную локали. Просто используя

$ LC_NUMERIC="en_US.UTF-8"

победил'т работа.

Ответы на вопрос(2)

Ваш ответ на вопрос