![]() |
[awk]Input script
I need a script that will do this:
1) accepts lines of input from another process (tethereal); 2) print portions (fields) of each input line to a file; 3) When the file contains a certain number of lines, a new file is started. Can anyone help me out with it? |
Does it have to be awk?
I could help with python or perl. |
Pure awk or do you want to wrap an awk line in a shell script?
I mean like... wipe outfile linecount=0 limit=100 while (read from input to EOF) or (linecount > limit) do awk '{print $1}' >> outfile increment linecount done Obviously not real. Doesn't handle file rotation/naming either. |
Pure Awk... I'm rather clueless when it comes to awk so I'm not gonna be of much help sadly.
|
I started to write something real but figure this is probably for an assignment. No?
Google for combinations of "awk manpage getline manual". You're bound to find bunches available for ethereal. The worst part is that it's old-school and a bit different. Doing what you want is a breeze though. Start simple. Suck in a fixed file of a few lines and see how the field printing works. Move to input from a pipe and build from there. Before perl arrived, awk & sed were required for survival. Easy stuff. You'll blow through it. |
It's not for an assignment, it's more like a challenge. I have part of the script but I have been unable to get it to work correctly, and being as new to it as I am, I only learned of awk this week, i'm kinda lost of where to go with it. I'll toy with it some more and see what I can pull up.
|
I'm actually writing a program similar to this for my job - using a perl script to parse tethereal output, sort based on tcp conversations, output to a database and to an HTML flat file.
What exactly were you having trouble with, and what did you need it for? |
All times are GMT -8. The time now is 03:34 PM. |
Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
Search Engine Optimization by vBSEO 3.6.0 PL2
© 2002-2012 Tilted Forum Project