2011-01-22 1 views
9

IRB를 사용하여 스크립트를 실행 한 다음 대화 형 프롬프트를 제공하고 싶습니다. 나는 파이썬에서 python -i xy.py을 사용하지만 실행 후 irb xy.rb이 종료된다.IRB analog of python -i

> python --help 

-i When a script is passed as first argument or the -c option is 
     used, enter interactive mode after executing the script or the 
     command 

답변

9
irb -r xy.rb 

그것은 단순히 당신에게 정상 IRB 프롬프트를주기 전에 언급 한 파일이 필요합니다.

+4

'-r' 또는'require'를 사용하면 최상위 실행 환경에 정의되어 있어도 스크립트의 로컬 변수에 액세스 할 수 없다는 점에 유의하십시오. – Kelvin

+0

@Kelvin 이유가 무엇입니까? – hso

+0

@hso 루비의 범위 지정 규칙 때문입니다. 루비에서 파일을'require '또는'load' 할 때, 그 파일의 최상위 레벨에있는 지역 변수는 그 스크립트의 "spill out"하지 않습니다. 이것은'irb '에만 적용되는 것이 아니라 하나의 스크립트가 다른 스크립트를 요구할 때도 마찬가지입니다. 이 문제를 해결하기 위해'eval'을 사용할 수는 있지만 바인딩을 망칠 필요가 있습니다. – Kelvin