class LTools::Tshark

Public Class Methods

capture(interface: nil, bpf: nil, fields:nil, filter: nil, append: nil) click to toggle source
# File lib/tools/tshark.rb, line 6
def self.capture(interface: nil, bpf: nil, fields:nil, filter: nil, append: nil)
  cmd = 'tshark'
  cmd << ToolOpts.build {|opts|
    opts.on('-i', interface)
    opts.on('-f', bpf)
    opts.on('-Y', filter)
  }
  if fields
    fields = fields.split if fields.is_a? String
    fields.unshift ' -T fields'
    cmd << fields.join(' -e ')
  end
  cmd << ' ' << append  if append
  new cmd
end

Public Instance Methods

records() click to toggle source
# File lib/tools/tshark.rb, line 22
def records
  @stdout.each_line.map do |line|
    line.split("\t")
  end
end