Sponsored Content
Top Forums UNIX for Beginners Questions & Answers Any way to get join to include the non-matching line ??? Post 303044576 by newbie_01 on Wednesday 26th of February 2020 11:55:53 PM
Old 02-27-2020
Any way to get join to include the non-matching line ???

Hi,


Need guidance if I should totally abandon join and use something else instead. I found several other options when searching for merge files in UNIX.com


Below are the test files to join:



Code:
$ head -1000 a.txt b.txt c.txt
==> a.txt <==
A|1
B|3
C|5
D|10
E|11

==> b.txt <==
A|4
B|5
C|4
D|1

==> c.txt <==
A|1
A|3
C|5
D|10
E|11

Running
Code:
$ join -t"|" -j1 a.txt b.txt

gives



Code:
A|1|4
B|3|5
C|5|4
D|10|1

Is there no way to get the E row from a.txt

Running
Code:
$ join -t"|" -j1 a.txt c.txt

. Is there no way to get the B row from a.txt printed?



Code:
A|1|1
A|1|3
C|5|5
D|10|10
E|11|11

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Shell script to join a line to the line that follows it

Hi All, I need a shell script to join a line to the line that follows it. But I shouldn't do it for all the lines. I need to join a line having the character say '&' at the end of the line & need to join the line that follows it. E.g Input 1. This is the first line & 2. and the second... (6 Replies)
Discussion started by: shashi_kiran_v
6 Replies

2. Shell Programming and Scripting

need for loop to include fields as one line

another question that could possibly be answered with awk... #cat filename ab cd ef:ghi:jk lm:nop qrs ab cd ef:ghi:jk lm:nop qrs ab cd ef:ghi:jk lm:nop qrs ab cd ef:ghi:jk lm:nop qrs # for x in `awk 'sub($1" +"$2" +","",$0) ' filename`; do echo $x; done ef:ghi:jk ... (8 Replies)
Discussion started by: prkfriryce
8 Replies

3. Shell Programming and Scripting

How to use Perl to join multi-line into single line

Hello, Did anyone know how to write a perl script to merge the multi-line into a single line where each line with start at timestamp Input--> timestamp=2009-11-10-04.55.20.829347; a; b; c; timestamp=2009-11-10-04.55.20.829347; aa; bb; cc; (5 Replies)
Discussion started by: happyday
5 Replies

4. Shell Programming and Scripting

Join 3 or more files using matching column

Dear Forum, Full title of the topic would be: "Join 3 or more files using matching column without full list in any of these columns" I have several, typically 3 or 4 files which I need to join, something like FULL JOIN in slq scripts, all combinations of matches should be printed into an... (3 Replies)
Discussion started by: cyz700
3 Replies

5. Shell Programming and Scripting

Matching the substring and join two files

Hi I had two files like below. file-1 101001234567890 101001234567891 101001234567892 101001234567893 101001234567894 101001234567895 101001234567896 101001234567897 101001234567898 101001234567899 file-2 (6 Replies)
Discussion started by: p_sai_ias
6 Replies

6. Shell Programming and Scripting

Join all the lines matching similar pattern

I am trying to Join all the lines matching similar pattern. Example ; I wanted to join all the lines which has sam to a single line. In next line, i wanted to have all the lines with jones to a single line....etc > cat sample.txt sam 2012/11/23 sam 2012/12/5 sam 2012/12/5 jones... (2 Replies)
Discussion started by: evrurs
2 Replies

7. Shell Programming and Scripting

Insert lines above matching line with content from matching

Hi, I have text file: Name: xyz Gender: M Address: "120_B_C; ksilskdj; lsudlfw" Zip: 20392 Name: KLM Gender: F Address: "65_D_F; wnmlsi;lsuod;,...." Zip:90233I want to insert 2 new lines before the 'Address: ' line deriving value from this Address line value The Address value in quotes... (1 Reply)
Discussion started by: ysrini
1 Replies

8. Shell Programming and Scripting

Join two files with matching columns

Hi, I need to join two files together with one common value in a column. I think I can use awk or join or a combination but I can't quite get it. Basically my data looks like this, with the TICKER columns matching up in each file File1 TICKER,column 1, column, 2, column, 3, column 4 ... (6 Replies)
Discussion started by: unkleruckus
6 Replies

9. Shell Programming and Scripting

Compare file1 for matching line in file2 and print the difference in matching lines

Hello, I have two files file 1 and file 2 each having result of a query on certain database tables and need to compare for Col1 in file1 with Col3 in file2, compare Col2 with Col4 and output the value of Col1 from File1 which is a) not present in Col3 of File2 b) value of Col2 is different from... (2 Replies)
Discussion started by: RasB15
2 Replies

10. Shell Programming and Scripting

Regex to include up to blank line.

Hi guys I am trying to figure out how to match a pattern with a regex up to a full blank line. I will show you what I mean with this example: example A movie name: ted movie name: TMNT movie name: Jinxed example B movie names: Gravity Faster Turbo song titles: dont hello problem (8 Replies)
Discussion started by: acoding
8 Replies
Test::LectroTest::RegressionTesting(3pm)		User Contributed Perl Documentation		  Test::LectroTest::RegressionTesting(3pm)

NAME
Test::LectroTest::RegressionTesting - How to do regression testing (for free!) SYNOPSIS
use Test::LectroTest regressions => "regressions.txt"; # -- OR -- use Test::LectroTest playback_failures => "regression_suite_for_my_module.txt", record_failures => "failures_in_the_field.txt"; # -- OR -- use Test::LectroTest::Compat regressions => "regressions.txt"; # -- OR -- use Test::LectroTest::Compat playback_failures => "regression_suite_for_my_module.txt", record_failures => "failures_in_the_field.txt"; DESCRIPTION
Say that LectroTest uncovers a bug in your software by finding a random test case that proves one of your properties to be false. If you apply a fix for the bug, how can you be sure that LectroTest will re-test the property using the exact same test case that "broke" it before, just to be certain the bug really is fixed? And how can you be sure that future changes to your code will not reintroduce the same bug without your knowing it? For situations like these, LectroTest can record failure-causing test cases to a file, and it can play those test cases back as part of its normal testing strategy. The easiest way to take advantage of this feature is to set the regressions parameter when you "use" Test::LectroTest or Test::LectroTest::Compat: use Test::LectroTest regressions => "regressions.txt"; This tells LectroTest to use the file "regressions.txt" for both recording and playing back failures. If you want to record and play back from separate files, use the record_failures and playback_failures options: use Test::LectroTest::Compat playback_failures => "regression_suite_for_my_module.txt", record_failures => "failures_in_the_field.txt"; Here is how it works: 1. When testing a property named N, LectroTest will check for a play-back file. If the file exists, LectroTest will search it for test cases associated with N. If any such test cases exist, LectroTest will play them back before and in addition to performing the usual, random testing of the property. 2. When performing the usual, random testing of a property named N, if a failure occurs (i.e., LectroTest finds a counterexample), LectroTest will record the test case that caused the failure to the recording file, associating the test case with the name N. NOTE: If you pass any of the recording or playback parameters to Test::LectroTest::Compat, you must have version 0.3500 or greater of Test::LectroTest installed. (Module authors, update your modules' build dependencies accordingly.) The Test::LectroTest module itself, however, has always ignored unfamiliar parameters, and thus these options are backward compatible with older versions. SEE ALSO
Test::LectroTest gives a quick overview of automatic, specification-based testing with LectroTest. This module accepts failure recording and play-back options. Test::LectroTest::Compat lets you mix LectroTest with the popular family of Test::Builder-based modules such as Test::Simple and Test::More. This module accepts failure recording and play-back options. LECTROTEST HOME
The LectroTest home is http://community.moertel.com/LectroTest. There you will find more documentation, presentations, mailing-list archives, a wiki, and other helpful LectroTest-related resources. It's also the best place to ask questions. AUTHOR
Tom Moertel (tom@moertel.com) COPYRIGHT and LICENSE Copyright (c) 2004-06 by Thomas G Moertel. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.12.3 2007-08-30 Test::LectroTest::RegressionTesting(3pm)
All times are GMT -4. The time now is 03:19 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy