UNIX оператори за сравнение на черупки

Тази статия е измама за оператори за сравнение в UNIX-базирани системи. Прилага се за основни черупки - sh (Bourne Shell), bash (Bourne Again Shell), csh, tcsh и някои други.

Сравняване на числа

Пример за използване в IF

ако [$ x -eq $ y]
тогава
ехо "вярно"
друго
ехо 'невярно'
fi

Сравнение на низове

Пример за използване в IF

ако [$ a = $ b]
тогава
ехо "вярно"
друго
ехо 'невярно'
fi

Множество условия (логически оператори)

Освен това

Как да пиша АКО в един ред

ако [$ x -ne 0]; след това ехо 1; fi

ако [$ x -ne 0 -a $ y -eq 1]; след това ехо 1; иначе ехо 2; fi

Аритметични операции

Изчисляването може да се извърши с помощта на един от следните методи:

сума = $ (($ сума1 + $ сума2 + $ сума3))

сума = `израз $ $ сума1 + $ сума2 + $ сума3`

* където операциите могат да бъдат както следва:

  • + - добавяне;
  • - - изваждане;
  • * - умножение;
  • / - разделяне;
  • % - остатък от разделението;
  • = - приравняване.

Грешка „Очаква се цялостен израз“

Най-често това се случва, когато се опитвате да използвате грешен оператор, например за линията -le (която трябва да се използва за число).

Примери за злоупотреба с оператори: