Почему вызов gem.bat из cmd-файла завершается после первого вызова? - PullRequest
2 голосов
/ 02 февраля 2011

Я вызываю gem команды в файле Windows .cmd, но он завершается после первой команды. Что дает?

gem sources --add http://gems.github.com 
gem install haml

Ответы [ 2 ]

5 голосов
/ 18 сентября 2012

Команда gem на самом деле является командным файлом в вашем PATH.Например, C:\Ruby192\bin\gem.bat.Вызов такого пакетного файла из пакетного / cmd-файла автоматически завершает весь сеанс в конце называемого пакетного файла.Существует специальная команда, которая возвращает файл , вызывающий batch / cmd.Используйте команду CALL перед каждым вызовом другого пакетного файла.

CALL gem sources --add http://gems.github.com
CALL gem install haml
2 голосов
/ 02 февраля 2011

Я решил это, вызвав первую команду gem через cmd.exe, но я все еще хочу услышать объяснения того, что происходит.

cmd.exe /c gem sources --add http://gems.github.com   
gem install haml 
...