Есть ли способ зафиксировать ошибку «команда не найдена» в сценарии Ruby? Например, задано:
output = `foo`
Как мне отловить ситуацию, когда foo
не установлен? Я ожидал, что смогу спасти
исключение, но это, похоже, не работает в 1.8.7. Есть ли другой способ вызвать подпроцесс, который будет делать то, что я хочу? Или есть другой подход?
Обновление
Прошу прощения, я забыл упомянуть скрытое требование: я бы предпочел, чтобы интерпретатор не передавал пользователю командную строку (она может содержать конфиденциальные данные), поэтому предпочтительным является метод перехвата исключений. Еще раз извиняюсь за то, что упустил это в первый раз.