В принципе, ваше решение правильное. Вы просто допустили простую синтаксическую ошибку в bash. Вам нужно поставить пробелы вокруг символов '[' и ']':
[ $? == 1 ]
Я проверил это на своем боксе, и это работает. Я бы также предложил проверить код ошибки как не равный 0 ([ $? -ne 0 ]), если вы не уверены, что хотите реагировать только на код ошибки 1.