Bash равенство строк
В bash
, какая разница, если таковая имеется, между равными и двойными равными тестовыми операторами?
[[ "a" = "a" ]] && echo equal || echo not-equal
[[ "a" == "a" ]] && echo equal || echo not-equal
[[ "a" = "b" ]] && echo equal || echo not-equal
[[ "a" == "b" ]] && echo equal || echo not-equal
приводит к:
equal
equal
not-equal
not-equal
Ответы
Ответ 1
Нет никакой разницы, ==
является синонимом для =
(для людей C/С++, я полагаю). Например, здесь.
Вы можете дважды проверить, чтобы быть действительно уверенным или просто для вашего интереса, посмотрев bash исходный код, должно быть где-то в синтаксическом коде там, но я не мог найти его сразу.