Currently I am sniffing packets from my local wlan interface like :
sudo tshark > sampleData.pcap
However, I need to feed this data to kafka.
With netcat
No need to write a server, you can use netcat (and tell your script to listen on the standard input):
shell1> nc -l 8888 | ./producer.sh
shell2> sudo tshark -l | nc 127.1 8888
The -l
of tshark prevents it from buffering the output too much (flushes after each packet).
With a named pipe
You could also use a named pipe to transmit tshark output to your second process:
shell1> mkfifo /tmp/tsharkpipe
shell1> tail -f -c +0 /tmp/tsharkpipe | ./producer.sh
shell2> sudo tshark -l > /tmp/tsharkpipe