Sponsored Content
Full Discussion: Organize output with awk
Top Forums Shell Programming and Scripting Organize output with awk Post 303019408 by Ophiuchus on Thursday 28th of June 2018 04:28:56 PM
Old 06-28-2018
Organize output with awk

Hello, maybe someone could help me with this.

I'm trying to print in a more ordered way this input.

the input file is:
Code:
AB   XY  UT   ZW                                      PRAT   
  0   3    4  7214800                                    93
  0   3    4  730770                                     93
         VLL  VMI  VKO  VER
          39         5

  0   1    4  7318                                       93
  0   2    4  87477                                     187
         VLL  VMI  VKO  VER
         102    7       0-0

  0   9    4  49365                                     185    
  0   1    4  5307                                       93

For some lines there are 2 related lines that contain "VLL VMI VKO VER" and in next line a corresponding value.
For example:
- The line where $4=730770 (header is ZW), has the value VLL=39 and VKO=5
- The line where $4=87477 has the value VLL=102, VMI=7 and VER=0-0

So, I would like to print this related values in the sale line when happens.

The output I'm looking for is like this:
Code:
AB   XY  UT   ZW                PRAT   VLL  VMI  VKO  VER 
  0   3    4  7214800              93
  0   3    4  730770               93   39         5
  0   1    4  7318                 93
  0   2    4  87477               187  102    7       0-0
  0   9    4  49365               185    
  0   1    4  5307                 93


I've was able to get this awk script but is far from desired output since basically is removing the lines with "VLL VMI VKO VER" and leaving the values in same place (in next line).

Code:
awk 'BEGIN{print "AB   XY  UT   ZW        PRAT    VLL  VMI  VKO  VER"}
NR>1 && $0!~"VLL" {print}
/VLL  VMI  VKO  VER/{getline v; print v}' inputfile

AB   XY  UT   ZW        PRAT    VLL  VMI  VKO  VER
  0   3    4  7214800                                    93
  0   3    4  730770                                     93
          39         5

  0   1    4  7318                                       93
  0   2    4  87477                                     187
         102    7       0-0

  0   9    4  49365                                     185
  0   1    4  5307                                       93

Thanks in advance
 

9 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

How do I organize a series of files in date order?

I'd like to ls a group of files in date order but I'm not sure what the commands would be. Can anyone help with this? (1 Reply)
Discussion started by: hedgehog001
1 Replies

2. Shell Programming and Scripting

looking for a simple way to organize envs on our unix box...

would like to standardize how we set envs on our unix box, so I thought a menu would be a great way to accomplish this. The problem I'm experiencing, is the value is set...but ONLY during the time the menu is initiated. please see below: > /home/is/bin/r12MENU.sh ... (2 Replies)
Discussion started by: mr_manny
2 Replies

3. Shell Programming and Scripting

how organize my log file ( tabs )

hello i have written a multitask script which performs verifications on the server (RHEL 5 tikanga); based on list of rules. since the results are huge both in length and number and I am sending them all to my log file. Is there any method to organize the STATUS of my results in a defined... (1 Reply)
Discussion started by: goswami.c
1 Replies

4. Shell Programming and Scripting

Organize of Data

Hello Expert, I am new in awk. I would like to know how to arrange data like Input File: lpar1 1 2 3 4 5 6 lpar10 4 5 6 lpar3 4 5 (3 Replies)
Discussion started by: shah09
3 Replies

5. UNIX and Linux Applications

Organize (pretty) code

I'm looking for terminal programs, which organize and pretty code like HTML or JavaScript. Thanks! ---------- Post updated at 07:01 AM ---------- Previous update was at 01:49 AM ---------- Found this Online javascript beautifier (1 Reply)
Discussion started by: borobudur
1 Replies

6. Shell Programming and Scripting

need help for a script to organize data

Hey all, I have a file with info like this 12:05:44 DEV001 (15F6) 71 5 1372 131 58 100 6 0 17 DEV002 (15FA) 60 0 928 15 50 N/A 2 N/A 5 DEV003 (15FE) 77 2 961 59 51 100 1 0 2... (2 Replies)
Discussion started by: leo.maveriick
2 Replies

7. Shell Programming and Scripting

Organize file according to their extension

Hi Everyone ! i want to make an application which is written in shell script and in Bourne shell (sh) i want, when my script is executed, it read all the files in the directly and move them to folders according to their extension. suppose i have a files: test.txt test.jpg test.docx... (1 Reply)
Discussion started by: me_newbie
1 Replies

8. Shell Programming and Scripting

Discover unique names and organize

I'm attempting to write a script that will look into a directory, discover all unique names, create directories for their prefix names and place the files inside. I do this now one by one with a simple script but I'd like to automate the process. The directory would contain something like: ... (6 Replies)
Discussion started by: scribling
6 Replies

9. Shell Programming and Scripting

Is there a way to organize bash_profile across different platforms

I want to have one .bash_profile works on multiple platform, ubuntu, debian, redhat, cygwin, osx. So how should I organize .bash_profile? It can be multiple files in some subdir Let me brief you: what i want is a way to organize bash_profile across platforms so I can use one set of profiles... (2 Replies)
Discussion started by: John_Peter
2 Replies
Graph(3pm)						User Contributed Perl Documentation						Graph(3pm)

NAME
SVG::Graph - Visualize your data in Scalable Vector Graphics (SVG) format. SYNOPSIS
use SVG::Graph; use SVG::Graph::Data; use SVG::Graph::Data::Datum; #create a new SVG document to plot in... my $graph = SVG::Graph->new(width=>600,height=>600,margin=>30); #and create a frame to hold the data/glyphs my $frame = $graph->add_frame; #let's plot y = x^2 my @data = map {SVG::Graph::Data::Datum->new(x=>$_,y=>$_^2)} (1,2,3,4,5); my $data = SVG::Graph::Data->new(data => @data); #put the xy data into the frame $frame->add_data($data); #add some glyphs to apply to the data in the frame $frame->add_glyph('axis', #add an axis glyph 'x_absolute_ticks' => 1, #with ticks every one #unit on the x axis 'y_absolute_ticks' => 1, #and ticks every one #unit on the y axis 'stroke' => 'black', #draw the axis black 'stroke-width' => 2, #and 2px thick ); $frame->add_glyph('scatter', #add a scatterplot glyph 'stroke' => 'red', #the dots will be outlined #in red, 'fill' => 'red', #filled red, 'fill-opacity' => 0.5, #and 50% opaque ); #print the graphic print $graph->draw; DESCRIPTION
SVG::Graph is a suite of perl modules for plotting data. SVG::Graph currently supports plots of one-, two- and three-dimensional data, as well as N-ary rooted trees. Data may be represented as: Glyph Name Dimensionality supported 1d 2d 3d tree -------------------------------------------------------- Axis x Bar Graph x Bubble Plot x Heatmap Graph x Line Graph x Pie Graph x Scatter Plot x Spline Graph x Tree x SVG::Graph 0.02 is a pre-alpha release. Keep in mind that many of the glyphs are not very robust. PLOTTING
You need to create a SVG::Graph::Frame instance from the parent SVG::Graph instance for each set of data to be plotted. Datasets can be hierarchical, and to represent this, SVG::Graph::Frame instances can themselves contain subframes. SVG::Graph::Frame can contain: - multiple subframes as instances of SVG::Graph::Frame - a single SVG::Graph::Data instance - multiple SVG::Graph::Glyph instances with which to render the attached SVG::Graph::Data instance, and all SVG::Graph::Data instances attached to SVG::Graph::Frame subinstances See SVG::Graph::Frame and SVG::Graph::Glyph for details. ONE DATA SET 1. create an SVG::Graph instance 2. create an SVG::Graph::Frame instance by calling SVG::Graph::add_frame(); 3. create an SVG::Graph::Data instance, containing an SVG::Graph::Data::Datum instance for each data point. 4. Attach the SVG::Graph::Data instance to your SVG::Graph::Frame using SVG::Graph::Frame::add_data(); 5. Attach glyphs to the SVG::Graph::Frame instance using SVG::Graph::Frame::add_glyph(); 6. Call SVG::Graph::draw(); MULTIPLE DATA SETS 1. create an SVG::Graph instance 2. create an SVG::Graph::Frame instance by calling SVG::Graph::add_frame(); 3. create an SVG::Graph::Data instance, containing an SVG::Graph::Data::Datum instance for each data point. 4. Attach the SVG::Graph::Data instance to your SVG::Graph::Frame using SVG::Graph::Frame::add_data(); 5. Attach glyphs to the SVG::Graph::Frame instance using SVG::Graph::Frame::add_glyph(); 6. repeat [2-5] for each additional data set to be added. add_frame() can be called on SVG::Graph to add top-level data sets, or SVG::Graph::Frame to add hierarchical data sets. 7. Call SVG::Graph::draw(); FEEDBACK
Send an email to the svg-graph-developers list. For more info, visit the project page at http://www.sf.net/projects/svg-graph AUTHORS
Allen Day, <allenday@ucla.edu> Chris To, <crsto@ucla.edu> CONTRIBUTORS
James Chen, <chenj@seas.ucla.edu> Brian O'Connor, <boconnor@ucla.edu> SEE ALSO
SVG METHODS
new Title : new Usage : my $graph = SVG::Graph->new(width=>600, height=>600, margin=>20); Function: creates a new SVG::Graph object Returns : a SVG::Graph object Args : width => the width of the SVG height => the height of the SVG margin => margin for the root frame init Title : init Usage : Function: Example : Returns : Args : width Title : width Usage : $obj->width($newval) Function: Example : Returns : value of width (a scalar) Args : on set, new value (a scalar or undef, optional) height Title : height Usage : $obj->height($newval) Function: Example : Returns : value of height (a scalar) Args : on set, new value (a scalar or undef, optional) margin Title : margin Usage : $obj->margin($newval) Function: Example : Returns : value of margin (a scalar) Args : on set, new value (a scalar or undef, optional) svg Title : svg Usage : $obj->svg($newval) Function: Example : Returns : value of svg (a scalar) Args : on set, new value (a scalar or undef, optional) add_frame Title : add_frame Usage : my $frame = $graph->add_frame Function: adds a Frame to the current Graph Returns : a SVG::Graph::Frame object Args : a hash. usable keys: frame_transform (optional) 'top' default orientation 'bottom' rotates graph 180 deg (about the center) 'right' points top position towards right 'left' points top position towards left frames Title : frames Usage : get/set Function: Example : Returns : Args : xoffset Title : xoffset Usage : $obj->xoffset($newval) Function: Example : Returns : value of xoffset (a scalar) Args : on set, new value (a scalar or undef, optional) yoffset Title : yoffset Usage : $obj->yoffset($newval) Function: Example : Returns : value of yoffset (a scalar) Args : on set, new value (a scalar or undef, optional) draw Title : draw Usage : $graph=>draw Function: depends on child glyph implementations Returns : xmlifyied SVG object Args : none perl v5.10.0 2009-01-07 Graph(3pm)
All times are GMT -4. The time now is 12:45 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy