Sponsored Content
Full Discussion: Matching Numbers in Bash/AWK
Top Forums Shell Programming and Scripting Matching Numbers in Bash/AWK Post 302515783 by summer_cherry on Wednesday 20th of April 2011 11:16:38 PM
Old 04-21-2011
how about you try below perl?

Code:
open $fh,"<f1.txt";
while(<$fh>){
	chomp;
	my @arr = split;
	$hash{$arr[2]}->{'SEQ'}=$.;
	$hash{$arr[2]}->{'VAL'}=$_;
	$hash{$arr[2]}->{'GAP'}=10000;
}
open $fh2,"<f2.txt";
while(<$fh2>){
	my @tmp = split;
	foreach my $key(keys %hash){
		my $new_gap = abs($key-$tmp[1]);
		if($new_gap < $hash{$key}->{'GAP'}){
			$hash{$key}->{'GAP'} = $new_gap;
			$hash{$key}->{'APPEND'}=$tmp[1]." ".$tmp[2]." ".$tmp[0];
		}
	}
}
foreach my $key(sort {$hash{$a}->{'SEQ'} <=> $hash{$b}->{'SEQ'}} keys %hash){
	print $hash{$key}->{'VAL'}," ", $hash{$key}->{'APPEND'},"\n";
}

This User Gave Thanks to summer_cherry For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

matching numbers

hi all I have a 2 files. both the files have some numbers and i want to find out each number in file1 is existing or not in file2. if not then put it into new file. if yes then also in a seperate file i can not use diff command as the files are different and no order has been defined. ... (2 Replies)
Discussion started by: infyanurag
2 Replies

2. Shell Programming and Scripting

Matching in bash

I know how to do this in perl, but I want to do it in bash script. Hope some one could help me, many thanks! I have a file looks like this: AB_21423 ********* BC_123 ********* CD_343 ********* AB_289 ********* *************** *************** I... (5 Replies)
Discussion started by: zx1106
5 Replies

3. Shell Programming and Scripting

count numbers of matching rows and replace its value in another file

Hello all, can you help me in this problem, assume We have two txt file (file_1 and file_3) one is file_1 contains the data: a 0 b 1 c 3 a 7 b 4 c 5 b 8 d 6 . . . . and I need to count the lines with the matching data (a,b,..) and print in new file called file_2 such as the... (4 Replies)
Discussion started by: GoldenFalcon10
4 Replies

4. Shell Programming and Scripting

How to find the matching numbers between 2 files Using R language??

Hi friends,, I need ur help very urgently.I have 2 files which have more than 5000 numbers,I want to find the matching numbers between 2 files using R language.I dont know how to use for loop in R.I tried to get a result,,but didnt get, file1 is like 1061909 1162391... (1 Reply)
Discussion started by: sureshraj
1 Replies

5. UNIX for Dummies Questions & Answers

Matching numbers of characters in two lines

Dear all, I'm stuck on a certain problem regarding counting the number of characters in one line and then adjusting the number of characters of another line to this number. This was my original input data: @HWI-ST471_57:1:1:1231:2079/2... (4 Replies)
Discussion started by: DerSeb
4 Replies

6. Shell Programming and Scripting

Regex/egrep matching numbers in brackets

Experts: I don't know that regular expressions will ever be easy for me, so if one of you guru's could help out, I'd appreciate it. I'm trying to match a line in our syslog, but I can't figure out how to match a number inside a bracket. This is what I'm trying to match. "Jul 16 00:01:34... (2 Replies)
Discussion started by: jdveencamp
2 Replies

7. Shell Programming and Scripting

Adding numbers matching with words

Hi All, I have a file which looks like this: abc 1 abc 2 abc 3 abc 4 abc 5 bcd 1 bcd 3 bcd 3 bcd 5 cde 7 This file is just a miniature version of what I really have. Original file is some 1 million lines long. I have tried to come up with the code for what I wish to accomplish... (1 Reply)
Discussion started by: shoaibjameel123
1 Replies

8. Shell Programming and Scripting

Matching and retreiving numbers

Hi, I have one file 1.txt with one field consist of following Ids (shortlisted 10 but showing 3 here): 00052 00184 00607 and then second file 2.txt with three fields (very big file): 00052 00184 12.73062 00052 00598 13.51205 00052 00599 13.92554 00052 00600 13.73358... (2 Replies)
Discussion started by: bioinfo
2 Replies

9. Shell Programming and Scripting

awk decimal point numbers matching

Hi All, Can some one help me in identifying the significance of character "$" ,Which is playing critical role in matching decimal point numbers as below. $ echo "01#.01"|awk '{if ($0 ~ /^+(\.*)?$/) print}' $ echo "01#.01"|awk '{if ($0 ~ /^+(\.*)?/) print}' 01#.01 $ Regards, Rmkganesh. (3 Replies)
Discussion started by: rmkganesh
3 Replies

10. Shell Programming and Scripting

awk to combine all matching dates and remove non-matching

Using the awk below I am able to combine all the matching dates in $1, but I can not seem to remove the non-matching from the file. Thank you :). file 20161109104500.0+0000,x,5631 20161109104500.0+0000,y,2 20161109104500.0+0000,z,2 20161109104500.0+0000,a,4117... (3 Replies)
Discussion started by: cmccabe
3 Replies
XmDirection(library call)												 XmDirection(library call)

NAME
XmDirection -- Data type for the direction of widget components SYNOPSIS
#include <Xm/Xm.h> DESCRIPTION
XmDirection is the data type specifying the direction in which the system displays subwidgets, children of widgets, or other visual compo- nents that are to be laid out. This data type also affects traversal order within tab groups. XmDirection is implemented as an unsigned char bit mask. The horizontal and vertical directions can be specified independent of each other. XmDirection also specifies the precedence of the horizontal and vertical directions relative to each other. For example, a value of XmRIGHT_TO_LEFT_TOP_TO_BOTTOM lays out a component horizontally from right to left first, then vertically top to bottom. XmDirection provides the following masks, each of which corresponds to a particular bit in XmDirection: o XmRIGHT_TO_LEFT_MASK o XmLEFT_TO_RIGHT_MASK o XmTOP_TO_BOTTOM_MASK o XmBOTTOM_TO_TOP_MASK o XmPRECEDENCE_HORIZ_MASK o XmPRECEDENCE_VERT_MASK In addition to the preceding single bit masks, XmDirection also provides the following multiple bit masks. These multiple bit masks are particularly useful as arguments to XmDirectionMatchPartial: o XmHORIZONTAL_MASK o XmPRECEDENCE_MASK o XmVERTICAL_MASK Motif also provides the following enumerated constants for specifying various combinations of directions: XmRIGHT_TO_LEFT_TOP_TO_BOTTOM Specifies that the components are laid out from right to left first, then top to bottom. XmLEFT_TO_RIGHT_TOP_TO_BOTTOM Specifies that the components are laid out from left to right first, then top to bottom. XmRIGHT_TO_LEFT_BOTTOM_TO_TOP Specifies that the components are laid out from right to left first, then bottom to top. XmLEFT_TO_RIGHT_BOTTOM_TO_TOP Specifies that the components are laid out from left to right first, then bottom to top. XmTOP_TO_BOTTOM_RIGHT_TO_LEFT Specifies that the components are laid out from top to bottom first, then right to left. XmTOP_TO_BOTTOM_LEFT_TO_RIGHT Specifies that the components are laid out from top to bottom first, then left to right. XmBOTTOM_TO_TOP_RIGHT_TO_LEFT Specifies that the components are laid out from bottom to top first, then right to left. XmBOTTOM_TO_TOP_LEFT_TO_RIGHT Specifies that the components are laid out from bottom to top first, then left to right. XmTOP_TO_BOTTOM Specifies that the components are laid out from top to bottom. If horizontal direction is important, do not use this constant. XmBOTTOM_TO_TOP Specifies that the components are laid out from bottom to top. If horizontal direction is important, do not use this constant. XmDEFAULT_DIRECTION Specifies that the components are laid out according to the default direction. (This constant is primarily for widget writers.) XmLEFT_TO_RIGHT Specifies that the components are laid out from left to right. If vertical direction is important, do not use this constant. XmRIGHT_TO_LEFT Specifies that the components are laid out from right to left. If vertical direction is important, do not use this constant. RELATED
XmDirectionMatch(3), XmDirectionMatchPartial(3), XmDirectionToStringDirection(3), XmString(3), XmStringDirection(3), and XmStringDirection- ToDirection(3). XmDirection(library call)
All times are GMT -4. The time now is 10:24 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy