ruby – 如何捕获pry shell命令的输出?

前端之家收集整理的这篇文章主要介绍了ruby – 如何捕获pry shell命令的输出?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用pry,我想捕获,并使用 shell命令的输出.

例如,如果我跑

pry(main)> .ls

我想将文件列表放入一个可以在Ruby中使用的数组中.

我怎样才能做到这一点?

解决方法

这是一个非常古老的问题,但无论如何我都会回答它.从pry命令中获取数据有两种主要方法.第一个是命令将keep_retval选项设置为true,而shell命令则不是.第二,是使用虚拟管道.在您的示例中,可以这样做:
fizz = []
.ls | {|listing| fizz = listing.split("\n")} # can also be written as
.ls do |listing|
  fizz = listing.split("\n")
end
原文链接:https://www.f2er.com/ruby/268198.html

猜你在找的Ruby相关文章