Visit Our UNIX and Linux User Community


Append the output data horizontally


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Append the output data horizontally
# 1  
Old 07-29-2009
Append the output data horizontally

Hi experts

i have a simple script that fetches the count from different servers and inserts ahead of server name like below

servera,1
serverb,25
serverc,35

what i want to do is now when i run this script next day i want that output to be next to the earlier one like below and if possible u would to insert date as well on which date what was the count

servera,1,15
serverb,25,10
serverc,35,5
# 2  
Old 07-29-2009
Have a look at the join utility.
# 3  
Old 07-29-2009
Can You Please share what you have tried.
# 4  
Old 07-29-2009
Hope you are looking for something like this.

Code:
$ cat f1
servera,1,2
serverb,25,30
serverc,35,45

Code:
$ cat f2
servera,15
serverb,10
serverc,5

Code:
$ awk -F',' '{if(NR == FNR) {ar[$1]=$0;next} print ar[$1]","$2}' f1 f2
servera,1,2,15
serverb,25,30,10
serverc,35,45,5
$

If the input files are sorted you can use
Code:
join -t',' -j 1 f1 f2


Last edited by ranjithpr; 07-29-2009 at 09:01 AM..
# 5  
Old 07-31-2009
Hi ranjithpr

It looks like your solution will work fine for me.. I will implement it today and will post again the results...

thanks again for alll the guys for your contribution

---------- Post updated 07-31-09 at 03:37 AM ---------- Previous update was 07-30-09 at 10:09 PM ----------

Hi

after running below

$ awk -F',' '{if(NR == FNR) {ar[$1]=$0;next} print ar[$1]","$2}' f1 f2
servera,1,2,15
serverb,25,30,10
serverc,35,45,5
$

i get the output something like this

,1,2,
,25,30,10
,35,45
,15
,10
,5

and also its not reflecting in any file it shows shows on screen
# 6  
Old 07-31-2009
If the result of your script is in 'file1' and the master file your maintaining is 'master_file'

below commands can be used append the data of file1 to master_file

Code:
$ awk -F',' 'NR==FNR {ar[$1]=$0;next} 
            {  if($1 in ar) {  print ar[$1] "," $2;delete ar[$1] } 
                else print $0
            } 
            END { for (i in ar) print ar[i] }' master_file file1 > master_file.tmp

$ mv master_file.tmp master_file


Previous Thread | Next Thread
Test Your Knowledge in Computers #606
Difficulty: Easy
MySQL 7.0 added the JSON utility function JSON_PRETTY(), which outputs an existing JSON value in an easy-to-read format.
True or False?

10 More Discussions You Might Find Interesting

1. Programming

Python script to run multiple command and append data in output csv file

Experts, I am writing a script and able to write only small piece of code and not able to collect logic to complete this task. In input file have to look for name like like this (BGL_HSR_901_1AG_A_CR9KTR10) before sh iss neors. Record this (BGL_HSR_901_1AG_A_CR9KTR10) in csv file Now have to... (0 Replies)
Discussion started by: as7951
0 Replies

2. Shell Programming and Scripting

Merging data horizontally with newlines in files

Hi Everyone, I have two files file1 and file2 with these contents cat file1 AAAAA 01/03/2014 04:01:23 BBBB 01/03/2014 03:03:34 CCCcc 01/03/2014 03:03:34 cat file2 1 RED 1 HHHH 1 TTTT 1 BBBBB I tried the below... (2 Replies)
Discussion started by: Aditya_001
2 Replies

3. Programming

Opening FD and append Data

Hello everybody I'am trying to open a File with an Filedeskriptor. After Opening the file I want to append Data to the File! I have the following code now, but I only overwrite the data from the file and did not append it! void Buffer::writeIntoFile(std::string name, int length, std::string... (2 Replies)
Discussion started by: pk543450
2 Replies

4. Shell Programming and Scripting

md5sum output append

Hi there, I have 2 fairly simple lines I am running and both work as expected, but I am trying to append the two of them to output a single line. The first command get the MAC times of each file :- find /media/Vista/Garmin/PCBSMP2/ -type f -printf "%A+ (a) %p\n%T+ (m) %p\n%C+ (c) %p\n" ... (9 Replies)
Discussion started by: kogorman
9 Replies

5. UNIX for Dummies Questions & Answers

Append data 1 table to other

Hi. I have 2 create 2 temporary tables.the data will be same with same cols..but after creating 2 tables..i have to merge data in file and send..however the query is after merging data no duplicates shud be present..and only 1 record for a entity must be present.. for eg: table1 has foll cols... (3 Replies)
Discussion started by: musu
3 Replies

6. Programming

Append data to smallint data in informix4gl?

Hi, I have an smallint variable, say "a", i would like to prefix it with "0" in certain conditions. Is it possible to achieve that with this datatype? For instance, a=9 --> a=09 Many thanks (1 Reply)
Discussion started by: dvah
1 Replies

7. Shell Programming and Scripting

want to append the data in one file to the another

Hi , i have two log files, i need to combine this as a one log file. i need to do this by SED , test1.log sadadadaadfsaf test2.log adadadadadada i need this in a single file from test 1 to test2.log test2.log(expected result) adadadadadada (7 Replies)
Discussion started by: mhdmehraj
7 Replies

8. Shell Programming and Scripting

append data to each line

Hi guys, I need to investigate a memory leak on a solaris server, so what I have done is pmap'd each process on the system with a script which tar'd the directory every hour in cron. Now I need to write a script to process the pmap data. So what I have is about 100 directories # ll... (2 Replies)
Discussion started by: borderblaster
2 Replies

9. Shell Programming and Scripting

Append the data to first column

Hi, The below is the content of the file. 008.03.50.21|ID4|0015a3f01cf3 008.04.20.16|ID3|0015a3f02337 008.04.20.17|ID4_1xVoice|00131180d80e 008.04.20.03|ID3_1xVoice|0015a3694125 008.04.30.05|ID3_1xVoice|0015a3f038af 008.06.30.17|ID3_1xVoice|00159660d454... (2 Replies)
Discussion started by: ravi_rn
2 Replies

10. UNIX for Dummies Questions & Answers

append data to file

i want to develop a script newdata that writes new data to a file called items the file items has the following headings columns separated by tabs: channel date time programe if i type executable file newdata on the command line with parameters, it should append it to the items files the... (1 Reply)
Discussion started by: fletcher
1 Replies

Featured Tech Videos