12

可能听起来像一个新手问题(这是因为我是 Ruby 和 IRB 的新手),但是有没有办法将您在 IRB 中执行的命令保存到文件中?我正在玩 WATIR,并且希望将所有输​​入保存到文件中,而不是复制和粘贴每个。

谢谢您的帮助!

4

4 回答 4

30

在我的机器上,我可以把它放在我的.irbrc文件中(位于你的主目录中):

Kernel.at_exit {
  File.open("irb.log", "w") do |f|
    f << Readline::HISTORY.to_a.join("\n")
  end
}

它会创建一个irb.log包含您的 readline 历史记录的文件。Irb 使用 readline 进行命令输入。我不知道,它可能被配置为某些人不使用 readline。也许历史会在某个时候被截断,或者它可能会被你在 irb 会话中执行的某些命令修改......但试试看它是否有效。

如果你希望 irb 提示和每个命令的结果都包含在日志中,那么只需使用 tee 记录 irb 的输出:

$ irb | tee irb.log
于 2010-11-19T21:51:33.097 回答
2

你可以在 irb 中运行 vim:

http://vimcasts.org/episodes/running-vim-within-irb/

于 2010-11-19T21:43:24.377 回答
0

当我想做同样的事情时,我发现了这个问题。我最终从 IRB 切换到 Pry;它是一个单独的 Ruby REPL 项目,具有 IRB 不支持的大量高级功能。

很值得一看。

于 2013-04-29T18:11:03.447 回答
0

看看watir-console

于 2010-11-22T10:52:16.373 回答