Sponsored Content
Full Discussion: Awk-using group function
Top Forums Shell Programming and Scripting Awk-using group function Post 302689369 by raj_saini20 on Tuesday 21st of August 2012 07:49:52 AM
Old 08-21-2012
Code:
awk -F"|" '{a[$1FS$2]++;b[$1FS$2]+=$4;c[$1FS$2]+=$5}END{for (i in a) print "SUM|"i,a[i],b[i],c[i]}' OFS="|" infile

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Substitute to GROUP BY function

Hi All, I really need a help on this thing. Most of us are aware about the group by function in Oracle. Do we have a substitute ( not necessarily a single line command) to it in Unix? Let me put it this way. I have a file whose content is like file1-: ID1,ID2,ID3,ID4,ID5 1,2,3,123,5... (3 Replies)
Discussion started by: rinku11
3 Replies

2. Shell Programming and Scripting

awk help required to group output and print a part of group line and original line

Hi, Need awk help to group and print lines to format the output as shown below INPUT FORMAT set echo on set heading on set spool on /* SCHEMA1 */ CREATE TABLE T1; /* SCHEMA1 */ CREATE TABLE T2; /* SCHEMA1 */ CREATE TABLE T3; /* SCHEMA1 */ CREATE TABLE T4; /* SCHEMA1 */ CREATE TABLE T5;... (5 Replies)
Discussion started by: rajan_san
5 Replies

3. Shell Programming and Scripting

Awk-Group count of field

Hi, Suppose if i am having a file with following records as given below. 5555 6756 5555 4555 4555 6767 how can i get the count of each record using AWK. Eg:5555 count should be 2 4555 count should be 2 6767 count should be 1 ... (5 Replies)
Discussion started by: tinivt
5 Replies

4. Shell Programming and Scripting

awk group by

Hi I have a file in this format: ... 04/May/2009 16 04/May/2009 1 05/May/2009 3 05/May/2009 5 06/May/2009 1 06/May/2009 3 ... I need to sum for every day, What is the best way? Thanks all (2 Replies)
Discussion started by: mutti
2 Replies

5. Shell Programming and Scripting

Awk problem: How to express the single quote(') by using awk print function

Actually I got a list of file end with *.txt I want to use the same command apply to all the *.txt Thus I try to find out the fastest way to write those same command in a script and then want to let them run automatics. For example: I got the file below: file1.txt file2.txt file3.txt... (4 Replies)
Discussion started by: patrick87
4 Replies

6. Shell Programming and Scripting

Group by using awk

Hi All, I have a file in the following format... ***************************************************** 11/10/27 12:09 : Input Record 11/10/27 12:10 : Input Record 11/10/27 12:10 : Input Record 11/10/27 12:10 : Input Record 11/10/27 12:10 : Input Record 11/10/27 12:10 : Input... (2 Replies)
Discussion started by: sraj142
2 Replies

7. Shell Programming and Scripting

awk - how do i get the last row of a group

How do i print the last record of a group in a file ? For example, I have a file like this : cat txt cucm1,location1,1,2,3 cucm2,location1,3,4,5 cucm1,location1,10,20,30 cucm2,location2,30,40,50 I am expecting a command that would print the last record of the group. For example, ... (2 Replies)
Discussion started by: Lakshmikumari
2 Replies

8. Programming

Sql ORA-00937: not a single-group group function

I'm trying to return only one row with the highest value for PCT_MAX_USED. Any suggestions? When I add this code, I get the ORA-00937 error. trunc(max(decode( kbytes_max, 0, 0, (kbytes_alloc/kbytes_max)*100))) pct_max_used This is the original and returns all rows. select (select... (3 Replies)
Discussion started by: progkcp
3 Replies

9. Shell Programming and Scripting

Need help on awk for printing the function name inside each function

Hi, I am having script which contains many functions. Need to print each function name at the starting of the function. Like below, functionname() { echo "functionname" commands.... } I've tried like below, func=`grep "()" scriptname | cut -d "(" -f1` for i in $func do nawk -v... (4 Replies)
Discussion started by: Sumanthsv
4 Replies

10. UNIX for Beginners Questions & Answers

Group and search using awk

file: Data has to be grouped on 1st field; And in each group, print 2nd field IF 1st field doesn't match with any of the values in 2nd field.. o/p to be: I ended up writing as below, any help ?? awk -F, '!($1 in a){a++;}END{for (i in a)print i}' file (3 Replies)
Discussion started by: JSKOBS
3 Replies
makedbm(8yp)															      makedbm(8yp)

Name
       makedbm - make a yellow pages dbm file

Syntax
       makedbm [ -i yp_input_file ] [ -o yp_output_name ] [ -d yp_domain_name ] [ -m yp_master_name ] infile outfile
       makedbm [ -u dbmfilename ]

Description
       The command takes the file specified by the argument infile and converts it to a pair of files in format, namely and Each line of the input
       file is converted to a single record.  All characters up to the first tab or space form the key, and the rest of the line is defined as the
       key's  associated data.	If a line ends with a backslash (), the data for that record is continued onto the next line.	It is left for the
       clients of the yellow pages to interpret the number sign (#); does not treat it as a comment character.	The  infile  parameter	can  be  a
       hyphen (-), in which case reads the standard input.

       The  command  is  meant	to  be	used in generating files for the yellow pages service.	The command generates a special entry with the key
       yp_last_modified, which is the date of infile.

Options
       -i     Create a special entry with the key yp_input_file.

       -o     Create a special entry with the key yp_output_name.

       -d     Create a special entry with the key yp_domain_name.

       -m     Create a special entry with the key yp_master_name.  If no master host name is specified, yp_master_name will be set  to	the  local
	      host name.

       -u     Undo a file.  That is, print out a file one entry per line, with a single space separating keys from values.

Examples
       The  following  example shows how a combination of commands can be used to make the yellow pages files and from the file.  The percent sign
       (%) signifies the system prompt.

       % awk 'BEGIN { FS = ":"; OFS = ""; }
	{ print $1, $0 }' /etc/passwd > ptmp
       % makedbm ptmp passwd.byname
       % rm ptmp

       The command creates the file ptmp which is in a form usable by The command uses the ptmp file to create the yellow pages dbm files and  The
       command removes the ptmp file.

See Also
       yppasswd(1yp), dbm(3x), ypmake(8yp)

																      makedbm(8yp)
All times are GMT -4. The time now is 11:42 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy