Как отобразить вывод в окне cmd во время работы сценария Ruby (Windows 7) - PullRequest
0 голосов
/ 05 августа 2011

рубин 1.9.2 watir 1.8.1

Мы запускаем наш скрипт ruby ​​из командной строки cmd (driver.rb). Затем скрипт ruby ​​выполняет следующую строку для выполнения команды приглашения cmd:

response = `choice /c 12 /n /m "1. Qual -- 2. Test"`

Мне бы хотелось, чтобы в окне подсказки отображался выбор, позволяющий пользователю сделать выбор, а затем вернуть его.

Когда команда выполнена, сообщение не отображается, но окно cmd ожидает ответа.

При вводе значения (1 или 2) возвращается строка

(/c 12 /n /m "1. Qual -- 2. Test x) 

, где х - это выбранное мной значение.

Когда завершается выполнение сценария ruby, я вижу подсказку в окне cmd.

Когда мы запускаем, любой вывод из сценария ruby ​​(например, put) появляется после завершения сценария.

Есть ли способ заставить вывод выводиться в окно cmd во время работы ruby ​​и не ждать, пока он закончится или, по крайней мере, появится команда приглашения cmd?

Буду признателен за любую помощь в этом вопросе.

1 Ответ

0 голосов
/ 06 августа 2011

Если вам требуются или включены другие сценарии ruby, код в этих сценариях выполняется.Это не проблема, если все, что они делают, это определяют классы, методы и т. Д. Однако, если в этих файлах присутствует реальный код, который не является частью определения объекта или метода, он будет выполняться перед любым другим контролем потока и т. Д.в вашем основном сценарии.

Я не могу точно сказать, происходит ли это с вами, но похоже, что это может иметь место в зависимости от того, как вы пытаетесь структурировать вещи.

...