Hello,
I have a file of text and numbers from which I want to extract certain fields and write it to a new file. I would use awk but unfortunately the input data isn't always formatted into the correct columns. I am using tcsh.
For example, given the following data
I want to extract:
and print it in one line of a new file as:
and extract
and print it as:
Does anyone have any ideas as to what command I Should use?
Thanks,
Dan
Yes,
Every record that I want to extract to a new line in the output file starts with a date in the format YYYY.MM.DD. However, not all records that I want have the following lines with aang, a, and b.
Assuming that your sample data is representative of the two forms of records you mentioned, and that you did not neglect to mention any special cases, a line with 6 numbers is a single line record that only requires appending three zeros; a line with 7 numbers is the start of a multiline record and is followed by three lines of 4, 3, and 5 fields respectively (all field counts are after tr filtering). The following AWK assembles what remains into what's desired, before passing it through another tr filter to squeeze mulitple spaces into a single space: