Это не сработает, потому что
result="$(schema_comparator compare "$NEW_SCHEMA" "$CURRENT_LIVE_SCHEMA")"
Если вы выполняете это как скрипт оболочки result
будет только строкой в вашей оболочке, то, что вызов вашего метода выведет в STDOUT. Это не объект ruby, поэтому на него нельзя вызывать команды ruby. Все, что вы можете сделать с переменной оболочки, это то, что будет поддерживать оболочка, если вы обращаетесь к ней в оболочке с помощью $result
.
Почему ты вообще хочешь это сделать? Почему бы просто не использовать рубин напрямую?