Sponsored Content
Full Discussion: sum(col) finding from a file
Top Forums Shell Programming and Scripting sum(col) finding from a file Post 302188333 by era on Wednesday 23rd of April 2008 07:08:42 AM
Old 04-23-2008
You forgot the "set --" which needs to go before the backticks. It causes the positional parameters to be filled with the output from the command in the backticks. (So $1 is whatever awk echos in the first field, and $2 is the second field in the output, etc.)

Code:
 vnix$ awk -F '|' '{ area += $2; population += $3; }
> END { print "area: " area; print "population: " population }' <<HERE
> USSR|10|20|Asia
> Canada|20|30|North America
> China|30|40|Asia
> HERE
area: 60
population: 90
vnix$ 
vnix$ 
vnix$ set -- `awk -F '|' '{ area+=$2; total+=$3; }
END { print "area: " area; print "total: " total }' <<HERE
> USSR|10|20|Asia
> Canada|20|30|North America
> China|30|40|Asia
> HERE
> ` # <- note closing backtick here
vnix$ echo $1
area:
vnix$ echo $2
60
vnix$ echo $4
90

You need to use either one or the other, not mix the two variants I posted.

Last edited by era; 04-23-2008 at 08:15 AM.. Reason: Example output
 

10 More Discussions You Might Find Interesting

1. Ubuntu

Match col 1 of File 1 with col 1 File 2 and create a 3rd file

Hello, I have a 1.6 GB file that I would like to modify by matching some ids in col1 with the ids in col 1 of file2.txt and save the results into a 3rd file. For example: File 1 has 1411 rows, I ignore how many columns it has (thousands) File 2 has 311 rows, 1 column Would like to... (7 Replies)
Discussion started by: sogi
7 Replies

2. Shell Programming and Scripting

Compare - 1st col of file

Hi, I have two different files, one has two columns and other has only one column. I would like to compare the first column in the first file with the data in the second file and write a third file with the data that is not present is not common to them. First file:... (26 Replies)
Discussion started by: swame_sp
26 Replies

3. Shell Programming and Scripting

Finding the sum of two numbers

cat *.out |grep "<some text>" | awk '{print $6}' For ex,This will reutrn me 11111 22222 is it possible to add these two numbers in the above given command itself?I can write this to a file and find the sum. But I prefer to this calculation in the above given line itself. Any... (3 Replies)
Discussion started by: prasperl
3 Replies

4. Shell Programming and Scripting

Finding Sum of Occurrances

Hello friends, I have a database export and with this export i need to find some statistics which is required. I take the export of a table with only 3 columns like this: 2nd 3rd 12th 123 05.11.2010 09:27 0 124 05.11.2010 09:28 0 125 05.11.2010 09:34 1 126 05.11.2010 09:39 0... (5 Replies)
Discussion started by: EAGL€
5 Replies

5. Shell Programming and Scripting

how to add new col in a file

Hi, Experts, I have a requirement as following: my source file: a a a b b c c c c I need add one more colume as following: 1 a 2 a 3 a 1 b 2 b 1 c 2 c (4 Replies)
Discussion started by: ken002
4 Replies

6. UNIX for Advanced & Expert Users

Print line based on highest value of col (B) and repetion of values in col (A)

Hello everyone, I am writing a script to process data from the ATP world tour. I have a file which contains: t=540 y=2011 r=1 p=N409 t=540 y=2011 r=2 p=N409 t=540 y=2011 r=3 p=N409 t=540 y=2011 r=4 p=N409 t=520 y=2011 r=1 p=N409 t=520 y=2011 r=2 p=N409 t=520 y=2011 r=3 p=N409 The... (4 Replies)
Discussion started by: imahmoud
4 Replies

7. Shell Programming and Scripting

Printing from col x to end of line, except last col

Hello, I have some tab delimited data and I need to move the last col. I could hard code it, awk '{ print $1,$NF,$2,$3,$4,etc }' infile > outfile but it would be nice to know the syntax to print a range cols. I know in cut you can do, cut -f 1,4-8,11- to print fields 1,... (8 Replies)
Discussion started by: LMHmedchem
8 Replies

8. Shell Programming and Scripting

Run a program-print parameters to output file-replace op file contents with max 4th col

Hi Friends, This is the only solution to my task. So, any help is highly appreciated. I have a file cat input1.bed chr1 100 200 abc chr1 120 300 def chr1 145 226 ghi chr2 567 600 unix Now, I have another file by name input2.bed (This file is a binary file not readable by the... (7 Replies)
Discussion started by: jacobs.smith
7 Replies

9. Shell Programming and Scripting

Modifying col values based on another col

Hi, Please help with this. I have several excel files (with and .xlsx format) with 10-15 columns each. They all have the same type of data but the columns are not ordered in the same way. Here is a 3 column example. What I want to do add the alphabet from column 2 to column 3, provided... (9 Replies)
Discussion started by: newbie83
9 Replies

10. Shell Programming and Scripting

Need help in finding sum for values in 2 different fields

Hi there, I have 2 files in following format cat file_1 Storage Group Name: aaaa HBA UID SP Name SPPort ------- ------- ------ 0 21 Storage Group Name: bbbb HBA UID... (2 Replies)
Discussion started by: jpkumar10
2 Replies
sum(1B) 					     SunOS/BSD Compatibility Package Commands						   sum(1B)

NAME
sum - calculate a checksum for a file SYNOPSIS
/usr/ucb/sum file... DESCRIPTION
sum calculates and displays a 16-bit checksum for the named file and displays the size of the file in kilobytes. It is typically used to look for bad spots, or to validate a file communicated over some transmission line. The checksum is calculated by an algorithm which may yield different results on machines with 16-bit ints and machines with 32-bit ints, so it cannot always be used to validate that a file has been transferred between machines with different-sized ints. USAGE
See largefile(5) for the description of the behavior of sum when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes). ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Availability |SUNWscpu | +-----------------------------+-----------------------------+ SEE ALSO
sum(1), wc(1), attributes(5), largefile(5) DIAGNOSTICS
Read error is indistinguishable from EOF on most devices; check the block count. NOTES
sum and /usr/bin/sum (see sum(1)) return different checksums. This utility is obsolete. SunOS 5.11 8 Nov 1995 sum(1B)
All times are GMT -4. The time now is 02:45 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy