Как использовать калькулятор BC в скриптах

Программа Linux bc может использоваться в качестве удобного настольного калькулятора или в качестве математического языка сценариев. Это так же просто, как вызвать команду 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

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

  4 + 3  

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

 7 

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

  #!/bin/bash  
echo '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/bash  
echo 'scale = 3; 6,5/2,7 '| до н.э

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

  echo 'scale = 3;  
var1 = 6,5/2,7;
var1 '\
| до н.э

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

  echo "scale = 3;  
var1 = 6,5/2,7;
var2 = 14 * var1;
var2 * = $ 1;
var2 "\
| до н.э

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

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

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

  #!/bin/bash  
echo "scale = 3;
var1 = 6,5/2,7;
var2 = 14 * var1;
var2 * = $ 1;
var2 "\
| до н.э

… и script2 содержит

  #!/bin/bash  
var0 = "100"
echo "var0: $ var0"
функция fun1
bc

fres = $ (fun1)
echo "fres:" $ fres
var10 = $ (./ script1 $ fres);
echo "var10:" $ var10;

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

Оцените статью
Solutics.ru
Добавить комментарий