gpt4 book ai didi

类似 ruby 猫壳

转载 作者:太空宇宙 更新时间:2023-11-03 18:25:38 28 4
gpt4 key购买 nike

我是 Ruby 新手。我过去使用过 shell。我正在将 shell 程序转换为 ruby​​。我有以下命令

cmd="cat -n " + infile + " | grep '127.0.0.1 '" + site
f = %x[#{cmd}]

shell cat 命令返回我要查找的行和行号。我希望能够在不使用 shell 的情况下在 ruby​​ 中做类似的事情。可能需要将此程序移植到 Windows。我可以在 ruby​​ 中使用 grep 函数,但是如何返回行号而不必遍历文件中的一百万行。谢谢。

最佳答案

这是一个小的 ruby​​ 函数,可以完成您的要求。您确实必须遍历每一行,但 grep 也在这样做 - 您只是不必自己做。幸运的是,ruby 使循环变得简单:

def mygrep(filename, regex)
result = []
File.open(filename) do |f|
f.each_with_index do |l, i|
result << [i, l] if regex =~ l
end
end
return result
end

干杯!

关于类似 ruby 猫壳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11529076/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com