LINUX.ORG.RU

История изменений

Исправление nexfwall, (текущая версия) :

Просто bash - это такое старое говно, которое не знает, что такое тип. Для него всё есть строки(как для Сей всё есть int), и всё что там можно делать - это над ними костылить.

Когда ты указываешь -eq вместо =, ты как бы говоришь этому набору костылей, что эту строку надо сначала прогнать через atoi(), и только потом сравнить получившиеся значения.

Тем более что [, не имеет отношения к bash. Это ссылка на /bin/test, которая является отдельной программой. /bin/test обычно используется для обработки условий sh, который является ещё большим старым говном, и ещё большим набором костылей. Условие, обрабатываемые самим bash, начинаются с [[.

Но к сожалению, пока новой достойной альтернативы никто не додумался написать. Только продолжают пытаться «улучшить» и «исправить ошибки» того, что уже есть.

Исходная версия nexfwall, :

Просто bash - это такое старое говно, которое не знает, что такое тип. Для него всё есть строки(как для Сей всё есть int), и всё что там можно делать - это над ними костылить.

Когда ты указываешь -eq вместо =, ты как бы говоришь этому набору костылей, что эту строку надо сначала прогнать через atoi(), и только потом сравнить получившиеся значения.

Тем более что [["["]], не имеет отношения к bash. Это ссылка на /bin/test, которая является отдельной программой. /bin/test обычно используется для обработки условий sh, который является ещё большим старым говном, и ещё большим набором костылей. Условие, обрабатываемые самим bash, начинаются с [["[["]].

Но к сожалению, пока новой достойной альтернативы никто не додумался написать. Только продолжают пытаться «улучшить» и «исправить ошибки» того, что уже есть.