Программа Linux bc работает как удобный настольный калькулятор или как математический язык сценариев. Это так же просто , как вызов Ьс команды через терминал. Помимо утилиты bc, большинство оболочек предоставляют другие методы, которые выполняют арифметические операции .
Синтаксис команды BC
Синтаксис для команды Ьса похож на язык программирования Си.
Команда поддерживает несколько ключей:
- -h , —help : печатает это использование и завершает работу.
- -i , —interactive : принудительный интерактивный режим.
- -l , —mathlib : Использует предопределенные математические процедуры.
- -q , —quiet : не печатать начальный баннер.
- -s , —standard : Нестандартные конструкции bc являются ошибками.
- -w , —warn : Предупреждает о нестандартных конструкциях bc.
- -v , —version : печатает информацию о версии и завершает работу.
Просмотрите man-страницу для bc для детальной разбивки использования команды.
Пример команды BC
Базовый калькулятор можно использовать в терминале, просто введя bc , после чего вы можете вводить регулярные математические выражения, например:
4 + 3
чтобы получить такой результат:
7
Используйте bc в скрипте
Когда вы несколько раз выполняете серию вычислений, имеет смысл использовать калькулятор bc как часть скрипта. Простейшая форма такого скрипта будет выглядеть примерно так:
#! / bin / bash
echo '6.5 / 2.7' | До нашей эры
Первая строка — это путь к исполняемому файлу, который запускает этот скрипт. В этом случае среда Bash.
Вторая строка содержит две команды. Команда echo генерирует строку, содержащую математическое выражение, заключенное в одинарные кавычки (в данном примере 6.5, разделенная на 2.7). Оператор канала (|) передает эту строку в качестве аргумента в программу bc. Выходные данные программы bc затем отображаются в командной строке.
Продлить производительность до н.э.
Чтобы показать три знака после запятой, поскольку истинный ответ — 2.407407 …, используйте оператор масштаба внутри строки, разделенной одинарными кавычками:
#! / bin / bash
echo 'scale = 3; 6,5 / 2,7 '| До нашей эры
Для лучшей читаемости строка с расчетами может разбиваться на несколько строк. Поставьте обратную косую черту в конце строки:
шкала эха = 3;
var1 = 6,5 / 2,7;
var1 '\
| До нашей эры
Используйте аргументы с помощью bc
Чтобы включить аргументы в вычисления bc, измените одинарные кавычки на двойные, чтобы символы параметра командной строки интерпретировались оболочкой:
echo "scale = 3;
var1 = 6,5 / 2,7;
var2 = 14 * var1;
var2 * = var1;
var2" \
| До нашей эры
Первый аргумент командной строки доступен через переменную var1 , второй аргумент использует var2 .
Например, если script1 содержит:
#! / bin / bash
echo "scale = 3;
var1 = 6,5 / 2,7;
var2 = 14 * var1;
var2 * = var1;
var2" \
| До нашей эры
и script2 содержит:
#! / bin / bash
var0 = "100"
echo "var0: $ var0"
function fun1
{
echo "scale = 3;
var1 = 10;
var2 = var1 * $ var0;
var2" \
| bc
}
fres = $ (fun1)
echo "fres:" $
fres var10 = $ (./ script1 $ fres);
echo "var10:" $ var10;
затем выполнение script2 вызовет script1, используя переменную $ fres, вычисленную в script2 в качестве параметра.