Как использовать калькулятор до н.э. в скриптах

Программа Linux bc может использоваться как удобный настольный калькулятор или как язык математических сценариев. Это так же просто, как позвонить до н.э Команда через терминал.

Помимо утилиты bc, оболочка Bash предоставляет несколько других методов для выполнения арифметических операций.

Программа bc также называется базовым калькулятором или настольным калькулятором.

Синтаксис команды BC

Синтаксис команды bc аналогичен языку программирования C, и поддерживаются различные операторы, такие как сложение, вычитание, плюс или минус и другие.

Это различные ключи, доступные с помощью команды bc:

  • -h, —help: печатает это использование и завершает работу.
  • -i, —interactive: принудительный интерактивный режим.
  • -l, —mathlib: Использует предопределенные математические процедуры.
  • -q, —quiet: не печатать начальный баннер.
  • -s, —standard: нестандартные конструкции bc являются ошибками.
  • -w, —warn: Предупреждает о нестандартных конструкциях bc.
  • -v, —version: печатает информацию о версии и завершает работу.

См. Это Руководство по эксплуатации bc для получения более подробной информации о том, как вы можете использовать базовый калькулятор

Пример команды BC

Базовый калькулятор можно использовать в терминале, просто введя до н.э, после чего вы можете набирать регулярные математические выражения, например так:

4 + 3

…чтобы получить такой результат:

7

При многократном выполнении серии вычислений имеет смысл использовать калькулятор bc как часть сценария. Простейшая форма такого скрипта будет выглядеть примерно так:

#! / Bin / Баш
эхо '6,5 / 2,7' | до н.э

Первая строка — это просто путь к исполняемому файлу, который запускает этот скрипт.

Вторая строка содержит две команды. Команда echo генерирует строку, содержащую математическое выражение, заключенное в одинарные кавычки (в данном примере 6.5, разделенная на 2.7). Оператор канала (|) передает эту строку в качестве аргумента в программу bc. Выходные данные программы bc затем отображаются в командной строке.

Чтобы выполнить этот сценарий, откройте окно терминала и перейдите в каталог, где расположен сценарий. Предположим, файл сценария называется bc_script.sh. Убедитесь, что файл является исполняемым с помощью команды chmod:

chmod 755 bc_script.sh

Затем вы должны ввести:

./bc_script.sh

Результат будет следующим:

2

Чтобы отобразить 3 знака после запятой, поскольку истинный ответ равен 2.407407 …, используйте оператор масштаба внутри строки, разделенной одинарными кавычками:

#! / Bin / Баш
шкала эха = 3; 6,5 / 2,7 '| до н.э

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

шкала эха = 3; 
var1 = 6,5 / 2,7;
var1 '\
| до н.э

Чтобы включить аргументы командной строки в вычисления bc, вы должны изменить одинарные кавычки на двойные, чтобы символы параметра командной строки интерпретировались оболочкой Bash:

эхо "шкала = 3; 
var1 = 6,5 / 2,7;
var2 = 14 * var1;
var2 * = $ 1;
вар2 "\
| до н.э

Первый аргумент командной строки доступен с помощью переменной «$ 1», второй аргумент использует «$ 2» и т. Д.

Теперь вы можете написать свои собственные арифметические функции в отдельных скриптах Bash и вызывать их из других скриптов.

Например, если script1 содержит:

#! / Bin / Баш
эхо "шкала = 3;
var1 = 6,5 / 2,7;
var2 = 14 * var1;
var2 * = $ 1;
вар2 "\
| до н.э

…и script2 содержит

#! / Bin / Баш 
var0 = "100"
echo "var0: $ var0"
функция fun1
{
эхо "шкала = 3;
var1 = 10;
var2 = var1 * $ var0;
вар2 "\
| до н.э
}
Фрес = $ (fun1)
echo "fres:" $ fres
var10 = $ (./ script1 $ fres);
echo "var10:" $ var10;

…затем выполнение script2 вызовет script1, используя переменную $ fres, вычисленную в script2 в качестве параметра.

Ссылка на основную публикацию