Linux script


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Linux script
# 1  
Old 11-27-2012
Linux Linux script

can anyone help in this
i have a file like
Code:
2089,success
2089,failure
2087,failure
2089,success
2087,failure.

i want output like.
Code:
2089,success=2,failure=1
2087,success=1,failure=2

thanks

Last edited by jim mcnamara; 11-27-2012 at 06:59 AM..
# 2  
Old 11-27-2012
Not exact what you like, but mat help you on you way
Code:
awk '{arr[$1]++; next} END {for (i in arr) { print i,arr[i] }}' file

gives
Code:
2089,failure 1
2087,failure 2
2089,success 2

This User Gave Thanks to Jotne For This Post:
# 3  
Old 11-27-2012
Try

Code:
$ cat file
2089,success
2089,failure
2087,failure
2089,success
2087,failure

$ awk -F, -v SU="success" -v FA="failure" '{X[$1]++;Y[$1,$2]++;next}END{for(i in X){print i",",SU,Y[i,SU]?Y[i,SU]:0,","FA,Y[i,FA]?Y[i,FA]:0}}' file
2087, success 0 ,failure 2
2089, success 2 ,failure 1

This User Gave Thanks to pamu For This Post:
# 4  
Old 11-27-2012
Can you explain the ?Y[i,SU]:0 in Y[i,SU]?Y[i,SU]:0?

Edit: Found it.
Print a 0 instead of blank if no hits Smilie
This User Gave Thanks to Jotne For This Post:
# 5  
Old 11-27-2012
@pamu= its not increasing the value of success and failure its jst giving output lik this
2089, success 0 ,failure 0
# 6  
Old 11-27-2012
Works fine. Try this.
Code:
echo "2089,success
2089,failure
2087,failure
2089,success
2087,failure
3011,success
2089,failure
3011,success
2087,failure
3011,success" | awk -F, -v SU="success" -v FA="failure" '{X[$1]++;Y[$1,$2]++;next}END{for(i in X){print i",",SU,Y[i,SU]?Y[i,SU]:0,","FA,Y[i,FA]?Y[i,FA]:0}}'

Gives
Code:
2087, success 0 ,failure 3
3011, success 3 ,failure 0
2089, success 2 ,failure 2

This User Gave Thanks to Jotne For This Post:
# 7  
Old 11-27-2012
Alternatively:
Code:
awk -F, '{A[$1]; B[$2]; C[$1,$2]++} END{for(i in A){p=i; for(j in B)p=p FS j "=" C[i,j]+0; print p}}' file


Last edited by Scrutinizer; 11-27-2012 at 12:58 PM..
These 2 Users Gave Thanks to Scrutinizer For This Post:
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Linux script - help!!

I need to create a bash script to run through crontab, to do the below job: 1- find files that are over 12 months old in /var "files are like file_201201222.mtd file_201201333.mtd 2- Tar them in /backup like: file_201201.tar.bz2 "every month in one tar file" 3- remove them after that 4- Send... (8 Replies)
Discussion started by: Ahmad M. Kamel
8 Replies

2. UNIX for Dummies Questions & Answers

Linux script

Hello, could you please help me with the following request? I need a linux command script that does the following. 1. delete folders folder1 and folder2 located in install/users/web/folder1&2. and also delete folder3 install/jboss/server/folder3. All these folders has many folder and files... (1 Reply)
Discussion started by: bern11
1 Replies

3. Shell Programming and Scripting

Need help! Linux shell script

Hi all, I am trying to make a Nodemanager work in RHEL 5 I got this script from 'oraclemiddleware.wordpress.com', and made appropriate changes to suit my weblogic installation. I keep getting the error, "line 82: syntax error: unexpected end of file". I have checked every line to make sure all... (4 Replies)
Discussion started by: chakrv1
4 Replies

4. Shell Programming and Scripting

Need linux script!!

I have a text file like this: 25 raj 78 rohit 89 bhanu 58 mohit 29 mano 53 rohit 63 shiva 74 lapan 63 bhanu what i need is a linux script to reorganize this file by adding the relevant content(number) to the names and print only once.... please help me someone. ... (1 Reply)
Discussion started by: shan1990
1 Replies

5. Shell Programming and Scripting

Help, Linux Script

#!/bin/sh args=("$@") echo "#=================================" echo "#Script Name:" echo "#By:" echo "#Purpose:" echo "#:Command Line: picoc" echo "#=================================" pico $@ this is my script. i think it is ok w/o error. but when i run it i got error. i'm using a VMBox... (1 Reply)
Discussion started by: jrdncchr
1 Replies

6. Linux

linux script

I need to write a script to which need to track errors in log and need to check last 100 lines in the log at every 5 minits. if error fund need to mail my self error type 1. "STATE_ADMIN" if found need to print: <Jan 5, 2011 11:47:02 AM IST><ewaps2> <ADFAPPS2> < STATE_ADMIN 2."Java heap... (0 Replies)
Discussion started by: udara
0 Replies

7. Shell Programming and Scripting

Linux script help

I am creating a script that will incorporate multiple variables organized in a spreadsheet for pdftk. I have a 1000 page pdf that I have to split into about 300 individual pdfs. The basic command line to extract pages is as follows: $ pdftk file.pdf cat 1-7 output newfile.pdf file.pdf =... (8 Replies)
Discussion started by: tankcommander
8 Replies

8. Shell Programming and Scripting

Help with linux bash script

Hello everybody! This is my first time having to write a script so your help is most appreciated.Also i am a beginner when it comes to linux so please bare with me.Thanks in advance to all who will look into this for me. I have to write a bash script that will show the free space on the hard... (4 Replies)
Discussion started by: manike
4 Replies

9. Shell Programming and Scripting

help with linux shell script

HI im a novice with shell scripts but i need help with a random script I have this folder filled with 500 different file names... I need help creating a script that will take each filename and make a new folder named that filename and then move that file into the newly created folder. Then the... (1 Reply)
Discussion started by: emachala
1 Replies

10. Shell Programming and Scripting

Linux Script help

Hi Everyone , have a nice day given below is a simple linux script but its first part is not working ( variable k assignment ) , while second loop is working fine can anyone help me out with this #!/bin/sh echo "Enter Date" read date1 for i in 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14... (6 Replies)
Discussion started by: Dastard
6 Replies
Login or Register to Ask a Question