[Comm] Арифметика в bash

Константин Михайленко const.mkh на gmail.com
Чт Ноя 17 08:20:45 MSK 2011


Как вариант man bc.
Оно совсем мощно будет.. а так:

#!/bin/bash
a=73
b=22
let c=$a+$b
d=$(( $a - $b ))
echo $c
echo $d

Арифметика целочисленная, допустимые операции:
сложение
- вычитание
* умножение
/ деление
% остаток от деления
** возведение в степень
+= увеличение переменной на заданное число
-= уменьшение переменной на заданное число
*= умножение переменной на заданное число
/= деление переменной на заданное число
%= найти остаток от деления значения переменной на заданное число,
записать его в переменную


17 ноября 2011 г. 13:51 пользователь Vladimir Karpinsky
<vkarpinsky на mail.ru> написал:
> Здравствуйте!
>
> Уже некоторое время пытаюсь найти простое решение следующей проблемы: нужно
> производить простейшие арифметические операции (как правило + или -1 ;-)) с
> "юлианскими" днями года (date +%j). Сложность заключается в том, что формат
> такой даты JJJ, т.е. первые 99 дней года первая цифра 0, и bash считает это
> число восьмеричным, со всеми вытекающими последствиями. Хочется заставить
> bash работать с такими числами, как десятеричными, формат JJJ для результата
> вычисления желательно также сохранить.
>
> --
>   С уважением,
>           Владимир.
>
> _______________________________________________
> community mailing list
> community на lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/community
>


Подробная информация о списке рассылки community