Sponsored Content
Top Forums Shell Programming and Scripting Compare two csv's with column based Post 302993440 by RudiC on Thursday 9th of March 2017 04:56:48 PM
Old 03-09-2017
Not sure this is the most elegant solution, but the result is as desired. Try
Code:
awk '
NR == FNR       {if (NR == 1)   {print
                                 for (MX=n=NF; n>0; n--) REF[$n]=n
                                }
                 else           TMP[NR] = $0
                 next
                }

FNR == 1        {for (n=NF; n>0; n--) if ($n in REF) CMP[n]=REF[$n]
                 next
                }

                {TSTR = TFS = ""
                 split ("", IT)
                 for (n=NF; n>0; n--)   if (CMP[n]) IT[CMP[n]] = $n
                 for (i=1; i<=MX; i++)  {TSTR = TSTR TFS IT[i]
                                         TFS  = FS
                                        }
                 if (TSTR != TMP[FNR]) print TMP[FNR]
                }


' FS="," file[12]
col_1,col_2,col_3
1,2,4

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

extract csv based on column value

Hi I have a csv file which is below A,5 B,6 C,10 D,7 I want the values who's second column is greater than 7 say C,10 D,7 Help me please... Thanks, Maruth (3 Replies)
Discussion started by: maruthavanan
3 Replies

2. Shell Programming and Scripting

Read CSV column value based on column name

Hi All, I am newbie to Unix I ve got assignment to work in unix can you please help me in this regard There is a sample CSV file "Username", "Password" "John1", "Scot1" "John2", "Scot2" "John3", "Scot3" "John4", "Scot4" If i give the column name as Password and row number as 4 the... (3 Replies)
Discussion started by: JohnGG
3 Replies

3. Shell Programming and Scripting

Compare files column to column based on keys

Here is my situation. I need to compare two tab separated files (diff is not useful since there could be known difference between files). I have found similar posts , but not fully matching.I was thinking of writing a shell script using cut and grep and while loop but after going thru posts it... (2 Replies)
Discussion started by: blackjack101
2 Replies

4. Shell Programming and Scripting

Pick the column value based on another column from .csv file

My scenario is that I need to pick value from third column based on fourth column value, if fourth column value is 1 then first value of third column.Third column (2|3|4|6|1) values are cancatenated. Main imp point, in my .csv file, third column is having price value with comma (1,20,300), it has... (2 Replies)
Discussion started by: Ganesh L
2 Replies

5. Shell Programming and Scripting

Compare based on column value

Hi Experts, I want to compare 2 text files based on their column values text1 is like prd-1234 yes no yes yes prd-2345 no no no yes prd-6475 yes yes yes no and test 2 is prd-1234 no no no yes prd-2345 yes no no no desired out put as follows prd-1234 1 3 prd-235 1 4 basically it shows... (5 Replies)
Discussion started by: tijomonmathew
5 Replies

6. Shell Programming and Scripting

Compare two files based on column

Hi, I have two files roughly 1200 fields in length for each row, sorted on the 2nd field. I need to compare based on that 2nd column between file1 and file2 and print lines that exist in both files into separate files (I can't guarantee that every line in file1 is in file2). Example: File1: ... (1 Reply)
Discussion started by: origon
1 Replies

7. Shell Programming and Scripting

Compare 2 files of csv file and match column data and create a new csv file of them

Hi, I am newbie in shell script. I need your help to solve my problem. Firstly, I have 2 files of csv and i want to compare of the contents then the output will be written in a new csv file. File1: SourceFile,DateTimeOriginal /home/intannf/foto/IMG_0713.JPG,2015:02:17 11:14:07... (8 Replies)
Discussion started by: refrain
8 Replies

8. UNIX for Beginners Questions & Answers

Compare first column from two csv files with greater than or equal, and less than

I have two csv files of different sizes. The output file needs to have file1 contents on top of file2 contents where file2 col1 is >= to file1 col1, and file2 col1(same value) is < file1 col1 (next value). So basically, some file2 rows will be matched to the same file1 row because it is the closet... (7 Replies)
Discussion started by: aachave1
7 Replies

9. Shell Programming and Scripting

Get maximum per column from CSV file, based on date column

Hello everyone, I am using ksh on Solaris 10 and I'm gathering data in a CSV file that looks like this: 20170628-23:25:01,1,0,0,1,1,1,1,55,55,1 20170628-23:30:01,1,0,0,1,1,1,1,56,56,1 20170628-23:35:00,1,0,0,1,1,2,1,57,57,2 20170628-23:40:00,1,0,0,1,1,1,1,58,58,2... (6 Replies)
Discussion started by: ejianu
6 Replies

10. Shell Programming and Scripting

Need awk or Shell script to compare Column-1 of two different CSV files and print if column-1 matche

Example: I have files in below format file 1: zxc,133,joe@example.com cst,222,xyz@example1.com File 2 Contains: hxd hcd jws zxc cst File 1 has 50000 lines and file 2 has around 30000 lines : Expected Output has to be : hxd hcd jws (5 Replies)
Discussion started by: TestPractice
5 Replies
TIMERADD(3)						   BSD Library Functions Manual 					       TIMERADD(3)

NAME
timeradd -- operations on time structure SYNOPSIS
#include <sys/time.h> void timeradd(struct timeval *a, struct timeval *b, struct timeval *res); void timersub(struct timeval *a, struct timeval *b, struct timeval *res); void timerclear(struct timeval *tv); int timerisset(struct timeval *tv); int timercmp(struct timeval *a, struct timeval *b, CMP); void timespecadd(struct timespec *a, struct timespec *b, struct timespec *res); void timespecsub(struct timespec *a, struct timespec *b, struct timespec *res); void timespecclear(struct timespec *ts); int timespecisset(struct timespec *ts); int timespeccmp(struct timespec *a, struct timespec b, CMP); DESCRIPTION
These macros are provided for manipulating the timeval and timespec structures described in timeval(3). The timeradd() and timespecadd() macros add the time information stored in a to b, storing the result in res. With timeradd() the results are simplified such that the value of res->tv_usec is always less than 1,000,000 (1 second). With timespecadd() the res->tv_nsec member of struct timespec is always less than 1,000,000,000. The timersub() and timespecsub() macros subtract the time information stored in b from a and store the resulting structure in res. The timerclear() and timespecclear() macros initialize the structures to midnight (0 hour) January 1st, 1970 (the Epoch). In other words, they set the members of the structure to zero. The timerisset() and timespecisset() macros return true if the input structure is set to any time value other than the Epoch. The timercmp() and timespeccmp() macros compare a to b using the comparison operator given in CMP. The result of the comparison is returned. SEE ALSO
timeval(3) HISTORY
The timeradd() family of macros first appeared in NetBSD 1.1. These were later ported to FreeBSD 2.2.6. The timespec() family of macros first appeared in NetBSD 1.2. BSD
June 7, 2010 BSD
All times are GMT -4. The time now is 11:05 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy