使用 irb 执行程序文件并保持交互

Execute program file with irb and remain interactive

是否可以运行 irb,传递一个自动执行的 .rb 文件,并让 irb 保持 运行 交互模式?

在 Windows 上,我有一个名为 checkme.bat 的文件,它基本上执行以下操作:

irb checkme.rb

现在的问题是,当我 运行 checkme.bat 时,irb 执行了程序文件,但随后就退出了,让我回到了命令行。

我不太确定,但是在 Windows 上,当您执行 .rb 文件时它会立即关闭,请尝试在程序末尾使用 gets

一种方法是使用 pry 并在脚本中要退出 repl 的位置添加行 binding.pry

x = 3
puts "Hello!"
binding.pry

然后你可以 运行 你的脚本 pry 它会让你检查发生了什么。

~> pry d.rb
Hello
[1] pry(main)> x
=> 3
[2] pry(main)>