Действия

Bash

Материал из lulzette's wiki

awk

http://mywiki.wooledge.org/BashPitfalls

if

  • [ *условие* ] && команда - выполнит команду если условие верно
  • [ *условие* ] || команда - выполнит команду если условие ложно
  • [ -f path ] - Наличие файла
  • [ -d path ] - Наличие директории
Скобки
[ — является специальной встроенной командой test воспринимающей свои аргументы как выражение сравнения или файловую проверку […..].

[[ — расширенный вариант от «[«, является зарезервированным словом, а не командой, его bash выполняет как один элемент с кодом возврата. Внутри «[[….]]» разрешается выполнение операторов &&, || которые приводят к ошибке в обычных скобках «[….]» тем самым вариант с двойной скобкой более универсален.

(( — является арифметическими выражениями, которое так же возвращают код 0. Тем самым такие выражения могут участвовать в операциях сравнения.

Приведу список логических операторов, которые используются для if|then|else:

-z  — строка пуста

-n — строка не пуста

=, ( == ) — строки равны

!=  — строки неравны

-eq — равно

-ne — неравно

-lt,(< ) — меньше

-le,(<=) — меньше или равно

-gt,(>) — больше

-ge,(>=) — больше или равно

! — отрицание логического выражения

-a,(&&) — логическое «И»

-o,(||) — логическое «ИЛИ»