We use as subscript of the array a, the remainder of NR/4 (division of NR by 4) with the modulo (%) operator.
The first line has the subscript 1 % 4 = 1
The second line has the subscript 2 % 4 = 2
Line 1:
If the 1st line is read, a[NR%4] = a[1] contains the 1st line ($0).
NR%4 == 1 so the code of the 2nd are skipped.
Line2:
a[NR%4] = a[2] contains the 2nd line.
NR%4 = 2 so the commands of the 2nd line of the code are processed.
The 1st statement is getline to read the next line. We use getline to continue with the next statement after reading the next line.
Now $0 contains the 3th line.
The next command prints a[1] = the first 1 and $0 (the 3th line).
After that, we get the nextline. Now $0 contains the 4th line.
The last the command prints a[2] = the 2nd line and $0 (the 4th line).
The next line is the 5th line, NR%4 = 5%4 = 1 and the we start the sequence again of line 1 and so forth.
Regards
Last edited by Franklin52; 11-08-2008 at 01:55 PM..
i am writing a script that reads in a file and i just want it to print each element on a new line here is my code and the data that i want to read in
#!/usr/bin/perl
use strict;
use CGI qw(:standard);
use CGI qw(:cgi);
my $data_file = "/tmp/results.txt";
my $configuration;
my... (3 Replies)
Hi
I have to convert the data in a file
*******
01-20-09 11:14AM 60928 ABC Valuation-2009.xls
01-20-09 11:16AM 55808 DEF GHI Equation-2009.xls
01-20-09 11:02AM 52736 ABC DF Valuation-2009.xls
01-20-09 11:06AM 89600 THE... (6 Replies)
I want to check whether if any column data has any + , - , = prefixed to it then convert it in such a form that in excel its not read as formula.
echo "$DATA" | awk 'BEGIN { OFS="," } -F" " {print $1,$2,$3,$4,$5,$6,$7,$8.$9,$10,$11,$12}' (4 Replies)
Hello everybody,
I have a file containing some statistics regarding CPU usage. The file has this syntax :
Fri Jul 16 14:27:16 EEST 2010
Cpu(s): 15.2%us, 1.4%sy, 0.0%ni, 82.3%id, 0.1%wa, 0.0%hi, 0.9%si, 0.0%st
Fri Jul 16 15:02:17 EEST 2010
Cpu(s): 15.3%us, 1.4%sy, 0.0%ni, 82.3%id, ... (9 Replies)
Hi,
I have data coming in like below. Not all data is like that, these are the problem records that is causing the ETL load to fail. Can you pls help me with combining theese broken records!
001800018000000guyMMAAY~acct name~acct type~~"address part 1
address... (8 Replies)
HI
I want to make it single row if start with braces i.e. { .Any idea
{1:XXX2460275191}{2:SEC00687921131112201641N}{3:{58910}}{4:
:R:GENL
:C::xx//xx1
:20C::yy//yy1
:2S:xxT}
{1:XXX2460275190}{2:SEC00687921131112201641y}{3:{58911}}{4:
:z:GENL
:v::xx//xx1
:10C::yy//yy1
:4S:xxT
... (2 Replies)
Hi,
I am generating the following output from my script.
Country,A,B,C,D,E,F
INDIA ,3755019,774604,484749,329838,7333612,442031
CHINA ,3716520,889197,530899,379754,6198475,355768
JAPAN ,52038,30462,231224,147275,1272,498
USA,9494,1130,0,0,15303,451... (5 Replies)
Need assistance on the data extraction using awk
Below is the format and would like to extract the data in another format
-------------------------------------------------------------------------------------------------
Minimum Temperature (deg F )
DAY 1 2 3 4 5 6 7 8 9 10 11... (4 Replies)
Discussion started by: ajayram_arya
4 Replies
LEARN ABOUT SUSE
mrtg-logfile
MRTG-LOGFILE(1) mrtg MRTG-LOGFILE(1)NAME
mrtg-logfile - description of the mrtg-2 logfile format
SYNOPSIS
This document provides a description of the contents of the mrtg-2 logfile.
OVERVIEW
The logfile consists of two main sections.
The first Line
It stores the traffic counters from the most recent run of mrtg.
The rest of the File
Stores past traffic rate averates and maxima at increassing intervals.
The first number on each line is a unix time stamp. It represents the number of seconds since 1970.
DETAILS
The first Line
The first line has 3 numbers which are:
A (1st column)
A timestamp of when MRTG last ran for this interface. The timestamp is the number of non-skip seconds passed since the standard UNIX
"epoch" of midnight on 1st of January 1970 GMT.
B (2nd column)
The "incoming bytes counter" value.
C (3rd column)
The "outgoing bytes counter" value.
The rest of the File
The second and remaining lines of the file contains 5 numbers which are:
A (1st column)
The Unix timestamp for the point in time the data on this line is relevant. Note that the interval between timestamps increases as you
prograss through the file. At first it is 5 minutes and at the end it is one day between two lines.
This timestamp may be converted in OpenOffice Calc or MS Excel by using the following formula
=(x+y)/86400+DATE(1970;1;1)
(instead of ";" it may be that you have to use "," this depends on the context and your locale settings)
you can also ask perl to help by typing
perl -e 'print scalar localtime(x),"
"'
x is the unix timestamp and y is the offset in seconds from UTC. (Perl knows y).
B (2nd column)
The average incoming transfer rate in bytes per second. This is valid for the time between the A value of the current line and the A
value of the previous line.
C (3rd column)
The average outgoing transfer rate in bytes per second since the previous measurement.
D (4th column)
The maximum incoming transfer rate in bytes per second for the current interval. This is calculated from all the updates which have
occured in the current interval. If the current interval is 1 hour, and updates have occured every 5 minutes, it will be the biggest 5
minute transfer rate seen during the hour.
E (5th column)
The maximum outgoing transfer rate in bytes per second for the current interval.
AUTHOR
Butch Kemper <kemper@bihs.net> and Tobias Oetiker <tobi@oetiker.ch>
2.16.2 2008-05-16 MRTG-LOGFILE(1)