Арифметические операции
Команда expr (express -- выражать) вычисляет выражение expression и записывает результат в стандартный вывод. Элементы выражения разделяются пробелами; символы, имеющие специальный смысл в командном языке, нужно экранировать. Строки, содержащие специальные символы, заключают в апострофы. Используя команду expr, можно выполнять сложение, вычитание, умножение, деление, взятие остатка, сопоставление символов и т. д.
Пример. Сложение, вычитание:
b=190
a=` expr 200 - $b`
где ` - обратная кавычка (левая верхняя клавиша). Умножение *, деление /, взятие остатка %:
d=` expr $a + 125 "*" 10`
c=` expr $d % 13`
Здесь знак умножения заключается в двойные кавычки, чтобы интерпретатор не воспринимал его как метасимвол. Во второй строке переменной с присваивается значение остатка от деления переменной d на 13.
Сопоставление символов с указанием числа совпадающих символов:
concur=` expr "abcdefgh" : "abcde"`
echo $concur
ответ 5.
Операция сопоставления обозначается двоеточием (:). Результат - переменная соncur.
Подсчет числа символов в цепочках символов. Операция выполняется с использованием функции length в команде expr:
chain="The program is written in Assembler"
str=` expr length "$chain"`
Echo $str
ответ 35. Здесь результат подсчета обозначен переменной str.