Интересно, существует ли разница между
if [ $x -eq $y -o $x -eq 1 ]
if [ $x -eq $y ] || [ $x -eq 1 ]
Оба, похоже, работают. Благодаря
Единственное различие, которое я вижу, будет заключаться в том, что первая из ваших команд будет работать как один процесс ([, AKA test)., а вторая может генерировать два процесса, если первая команда возвращает не- 0.
В противном случае нет принципиальной разницы.