07-31-2008
numeric range comparisons
I have two files.And a sort of matrix analysis.
Both files have a string followed by two numbers:
File 1:
A 2 7
B 3 11
C 5 10
......
File 2:
X 1 10
Y 3 5
Z 5 9
What I'd like to do is for each set of numbers in the second file indicate if the first or second number (or both) in the first file falls between or is equal to those numbers in the second file.
e.g. print our:
X 1 10: A_first A_second B_first C_first C_second
Y 3 5: B_first C_second
Z 5 9: A_second C_first
My general idea was to open 3 arrays from the 1st file and use an 'if' comparison to the values in the second file but I really don't know what I'm doing.
Thank you for any help.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi All,
Is there any code in Perl which can differentiate between numeric and non-numeric input? (11 Replies)
Discussion started by: Raynon
11 Replies
2. UNIX for Dummies Questions & Answers
Can someone tell me how to change the first column in a very large 17k line file from a random 10 digit numeric value to a non numeric value. The format of lines in the file is:
1702938475,SNU022,201004
the first 10 numbers always begin with 170 (6 Replies)
Discussion started by: Bahf1s
6 Replies
3. Shell Programming and Scripting
Hi Everyone,
Here's a snippet of my data:
File 1 = testRef2:
A1BG - 13208 13284
AAA1 - 34758475 34873943
AAAS - 53701240 53715412File 2 = 42MLN.3.bedS2:
13208
13208
13360
13363
13484
13518
13518My awk script:
awk 'NR == FNR{a=$1;next} {$1>=a}{$1<=a}{print... (5 Replies)
Discussion started by: heecha
5 Replies
4. Shell Programming and Scripting
Dear all,
I have numerous dat files (1.dat, 2.dat...) containing 500 numeric values each. I would like to count them, based on their range and obtain a histogram or a counter.
INPUT:
1.dat
1.3
2.16
0.34
......
2.dat
1.54
0.94
3.13
.....
... (3 Replies)
Discussion started by: chen.xiao.po
3 Replies
5. Programming
hi Experts
just wondering if you can help me check a number between a specific range
if i have an ip address , how can i say the valid number for ip between 1 to 254
something like this
if ($ip ) =~ /.../
{
}
what the pattern i need to type
thanks (3 Replies)
Discussion started by: doubando
3 Replies
6. Shell Programming and Scripting
Hello,
I have a text file with lines that look like this:
1974 12 27 -0.72743 -1.0169 2 1.25029
1974 12 28 -0.4958 -0.72926 2 0.881839
1974 12 29 -0.26331 -0.53426 2 0.595623
1974 12 30 7.71432E-02 -0.71887 3 0.723001
1974 12 31 0.187789 -1.07114 3 1.08748
1975 1 1 0.349933 -1.02217... (2 Replies)
Discussion started by: meridionaljet
2 Replies
7. Shell Programming and Scripting
Can someone please tell me what is wrong with this stings comparison?
#!/bin/sh
#set -xv
set -u
VAR=$(ping -c 5 -w 10 google.com | grep icmp_req=5 | awk '{print $6}')
echo I like cookies
echo $VAR
if "$VAR" == 'icmp_req=5'
then
echo You Rock
else
echo You Stink
fiThis is the error.... (6 Replies)
Discussion started by: cokedude
6 Replies
8. Shell Programming and Scripting
hi all,
Say i have a range like 0 - 1000 and i need to split into diffrent files the lines which are within a specific fixed sub-range. I can achieve this manually but is not scalable if the range increase.
E.g
cat file1.txt
Response time 2 ms
Response time 15 ms
Response time 101... (12 Replies)
Discussion started by: varu0612
12 Replies
9. Shell Programming and Scripting
Hi there,
Not being too up on bash shell programming at this point, could anyone throw me a bone about how to zip up a set of numerically-named files by range?
For example, in a folder that contains files 1.pdf through 132000.pdf, I'd like to zip up just those files that are 50000.pdf and... (6 Replies)
Discussion started by: enwood
6 Replies
10. Shell Programming and Scripting
Hi all,
I want to compare two files based on column value
Kindly help me
a.txt
123,ABCD
456,DEF
789,SDF
b.txt
123,KJI
456,LMN
321,MJK
678,KOL
Output file should be like
Common on both files
c.txt
123,ABCD,KJI (8 Replies)
Discussion started by: aaysa123
8 Replies
SORT(1) General Commands Manual SORT(1)
NAME
sort - sort or merge files
SYNOPSIS
sort [ -_________x ] [ +pos1 [ -pos2 ] ] ... [ -o name ] [ -T directory ] [ name ] ...
DESCRIPTION
Sort sorts lines of all the named files together and writes the result on the standard output. The name `-' means the standard input. If
no input files are named, the standard input is sorted.
The default sort key is an entire line. Default ordering is lexicographic by bytes in machine collating sequence. The ordering is
affected globally by the following options, one or more of which may appear.
b Ignore leading blanks (spaces and tabs) in field comparisons.
d `Dictionary' order: only letters, digits and blanks are significant in comparisons.
f Fold upper case letters onto lower case.
i Ignore characters outside the ASCII range 040-0176 in nonnumeric comparisons.
n An initial numeric string, consisting of optional blanks, optional minus sign, and zero or more digits with optional decimal point, is
sorted by arithmetic value. Option n implies option b.
r Reverse the sense of comparisons.
tx `Tab character' separating fields is x.
The notation +pos1 -pos2 restricts a sort key to a field beginning at pos1 and ending just before pos2. Pos1 and pos2 each have the form
m.n, optionally followed by one or more of the flags bdfinr, where m tells a number of fields to skip from the beginning of the line and n
tells a number of characters to skip further. If any flags are present they override all the global ordering options for this key. If the
b option is in effect n is counted from the first nonblank in the field; b is attached independently to pos2. A missing .n means .0; a
missing -pos2 means the end of the line. Under the -tx option, fields are strings separated by x; otherwise fields are nonempty nonblank
strings separated by blanks.
When there are multiple sort keys, later keys are compared only after all earlier keys compare equal. Lines that otherwise compare equal
are ordered with all bytes significant.
These option arguments are also understood:
c Check that the input file is sorted according to the ordering rules; give no output unless the file is out of sort.
m Merge only, the input files are already sorted.
o The next argument is the name of an output file to use instead of the standard output. This file may be the same as one of the
inputs.
T The next argument is the name of a directory in which temporary files should be made.
u Suppress all but one in each set of equal lines. Ignored bytes and bytes outside keys do not participate in this comparison.
EXAMPLES
Print in alphabetical order all the unique spellings in a list of words. Capitalized words differ from uncapitalized.
sort -u +0f +0 list
Print the password file (passwd(5)) sorted by user id number (the 3rd colon-separated field).
sort -t: +2n /etc/passwd
Print the first instance of each month in an already sorted file of (month day) entries. The options -um with just one input file make the
choice of a unique representative from a set of equal lines predictable.
sort -um +0 -1 dates
FILES
/usr/tmp/stm*, /tmp/* first and second tries for temporary files
SEE ALSO
uniq(1), comm(1), rev(1), join(1)
DIAGNOSTICS
Comments and exits with nonzero status for various trouble conditions and for disorder discovered under option -c.
BUGS
Very long lines are silently truncated.
7th Edition April 29, 1985 SORT(1)