Actual behaviour: % is-at-least 5.8.0.2 5.8 && echo yes || echo no yes % is-at-least 5.8.0.2 5.8.0.0 && echo yes || echo no no Expected behaviour: Both commands should have printed "no".