require 'json' REGEXPS = [ /linux/i, /debian/i, /ubuntu/i, /\bredhat\b/i, /\bRHEL\b/, /\bSUSE\b/, /\bCentOS\b/, /\bopensuse\b/i, /\bslackware\b/i, /\bKDE\b/, /\bGTK\d?\b/, /#GNOME\b/, /\bGNOME\s?\d+/, /\bkde plasma\b/i, /apt\-get/, /\bflatpak\b/i, /\b[Xx]org\b/ ] posts = JSON.load(File.read('atprotocoldev.json')) loops = ARGV[0].to_i if loops <= 0 puts "Usage: #{$PROGRAM_NAME} " exit 1 end time_start = Time.now loops.times do posts.each do |text| match = REGEXPS.any? { |r| text =~ r } end end time_end = Time.now total = loops * posts.length total_time = time_end - time_start puts "#{loops} * #{posts.length} = #{total} records in #{total_time} -> #{total / total_time} records/s"