有时我的irb历史遗漏了一些东西。这已经发生了多年,我还没有真正注意到一种模式。我会使用irb一段时间,控制它出来,几分钟后回来,我刚刚使用的命令不在那里,但是那天或者早些时候的命令就在那里。这主要是/总是在rails控制台中。
答案 0 :(得分:2)
我可能错了,但是阅读http://trac.greenstone.org/browser/extensions/gsdl-video/trunk/installed/cmdline/lib/ruby/1.8/irb/ext/save-history.rb?rev=18425 让我觉得最后一个irb进程会用自己的进程覆盖其他进程历史记录。
所以如果你跑:
irb
irb #in another term window
"a string" #then Ctrl-D in the first
#Ctrl-D in the second
然后你的.irb-history应该保持不变,因为初始的,后面的irb将加载旧的历史记录,然后在它退出时覆盖新的历史记录。
ie:有些愚蠢:打开('w')而不是打开('a')是罪魁祸首。
你可能会考虑编写一个补丁并将其用于更大的好处,如果这会激怒你。