Онлайн робочі станції OnWorks Linux та Windows

логотип

Безкоштовний онлайн-хостинг для робочих станцій

<Попередній | зміст | Наступна>

(( )) – призначений для цілих чисел

На додаток до [[]] складена команда, бити також надає (( )) складена команда, яка корисна для роботи з цілими числами. Він підтримує повний набір арифметичних оцінок, тему, яку ми повністю розглянемо в розділі 34.

(( )) використовується для виконання тести арифметичної істинності. Перевірка арифметичної істинності приводить до істини, якщо результат арифметичної оцінки відмінний від нуля.



[me@linuxbox ~]$ якщо ((1)); потім луна «Це правда.»; fi

Це правда.

[me@linuxbox ~]$ якщо ((0)); потім луна «Це правда.»; fi

[me@linuxbox ~]$

[me@linuxbox ~]$ якщо ((1)); потім луна «Це правда.»; fi

Це правда.

[me@linuxbox ~]$ якщо ((0)); потім луна «Це правда.»; fi

[me@linuxbox ~]$


використання (( )), ми можемо трохи спростити тестове ціле число2 такий сценарій:


#! / бін / баш


# test-integer2a: оцінити значення цілого числа.


INT=-5


якщо [[ "$INT" =~ ^-?[0-9]+$ ]]; тоді якщо ((INT == 0)); тоді

echo "INT дорівнює нулю."

ще

if ((INT < 0)); тоді

echo "INT негативний."

ще

echo "INT позитивний."

fi

if ((((INT % 2)) == 0)); тоді

echo "INT парне".

ще

echo "INT непарний."

fi

#! / бін / баш


# test-integer2a: оцінити значення цілого числа.


INT=-5


якщо [[ "$INT" =~ ^-?[0-9]+$ ]]; тоді якщо ((INT == 0)); тоді

echo "INT дорівнює нулю."

ще

if ((INT < 0)); тоді

echo "INT негативний."

ще

echo "INT позитивний."

fi

if ((((INT % 2)) == 0)); тоді

echo "INT парне".

ще

echo "INT непарний."

fi



echo "INT не є цілим числом." >&2 вихід 1

fi


echo "INT не є цілим числом." >&2 вихід 1

fi

Зверніть увагу на те, що ми використовуємо знаки «менше ніж» і «більше» і це == використовується для перевірки еквівалентності. Це більш природний синтаксис для роботи з цілими числами. Зауважте також, що через складену команду (( )) є частиною синтаксису оболонки, а не звичайною командою, і вона має справу тільки з цілими числами, вона здатна розпізнавати змінні за іменами і не потребує розширення. Ми обговоримо (( )) і відповідне арифметичне розширення далі в розділі 34.


Найпопулярніші хмарні обчислення ОС на OnWorks: