我目前正在通过 ARGV 打开在运行时获取的文件:
File.open(ARGV[0]) do |f|
f.each_line do |line|
一旦找到匹配项,我就会向用户打印输出。
if line.match(/(strcpy)/i)
puts "[!] strcpy does not check for buffer overflows when copying to destination."
puts "[!] Consider using strncpy or strlcpy (warning, strncpy is easily misused)."
puts " #{line}"
end
我想知道如何打印 (ARGV[0]) 文件中匹配行的行号。
Usingprint __LINE__
显示来自 Ruby 脚本的行号。我print __LINE__
用不同的字符串插值尝试了许多不同的变体,#{line}
但没有成功。有没有办法可以从文件中打印出行号?