[ale] Riddle me this awk man
Greg Freemyer
greg.freemyer at gmail.com
Thu Feb 17 20:01:05 EST 2011
All,
I'm trying to re-format the first field of a CSV file using AWK.
This is what I'm trying which is very close to working:
cat supertimeline.csv | awk -F" " '(NR == 1) {print};(NR > 1) { printf
"%s-%s-%s %s", $3,$2,$4,$5; $1=""; $2="";$3="";$4=""; $5=""; print
substr($0, 5) }' > mysupertimeline.csv
But:
# wc supertimeline.csv mysupertimeline.csv
541986 4392932 82668394 supertimeline.csv
174130 702866 23434337 mysupertimeline.csv
I end up with only about a third as many lines. How can that be? The
missing lines seem to be spread around, so it's not like it did the
first 174,130 lines and died.
I simplified it to:
cat supertimeline.csv | awk -F" " ' { printf "%s-%s-%s %s",
$3,$2,$4,$5; $1=""; $2="";$3="";$4=""; $5=""; print substr($0, 5) }' >
mysupertimeline.csv
and I get the same result. (I have lots of free diskspace, so don't
blame that.)
Boo Hiss!
FYI: this is ubuntu. I'll try it on cygwin in a second just because I
have the csv file there already.
--
Greg Freemyer
Head of EDD Tape Extraction and Processing team
Litigation Triage Solutions Specialist
http://www.linkedin.com/in/gregfreemyer
CNN/TruTV Aired Forensic Imaging Demo -
http://insession.blogs.cnn.com/2010/03/23/how-computer-evidence-gets-retrieved/
The Norcross Group
The Intersection of Evidence & Technology
http://www.norcrossgroup.com
More information about the Ale
mailing list