Вычисление выражений в shell

вычисления в shellДля вычисления выражений в shell можно использовать команду expr. Её можно применять как в командной строке, так и в скриптах. Далее рассмотрим несколько примеров использования команды expr.

Сложение

expr 6 + 4
10

Обратите внимание на обязательные пробелы, разделяющие значения и операторы. Без пробелов мы получи следующее:

expr 6+4
6+4

При использовании * (для умножения), нужно экранировать ее обратным слэшем:

expr 10 \* 10
100

Переменные

Использование переменных в вычислениях с использованием команды expr, так же допустимо:

var1=2
var1=`expr $var1 \* 2`
echo $var1
4

Тригонометрия в консоли

Пример вычисления косинуса в консоли:

var1=`echo "c(0.5)" | bc -l`
echo $var1
0.87758256189037271611628158260383

Работа со строками в консоли

Получение подстроки

expr substr «Большая строка» 9 6
строка

Вычисление длинны строки

fstr="Большая строка"
expr length $fstr
14

Регулярные выражения

Простой пример регулярных выражений в консоли

expr "a3" : [a-z][1-9]
2

Приложим немного фантазии:

myexpr="[a-z][1-9]"
expr "a3" : $myexpr
2

Конечно, это не самый лучший способ поиска пятницы, зато полностью рабочий:

date
Fri Dec 31 16:44:47 EST 2004
date | xargs -i expr {} : "[Fri]"
1

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *