Sponsored Content
Top Forums Shell Programming and Scripting read numbers from file and output which numbers belongs to which range Post 302315710 by panyam on Wednesday 13th of May 2009 05:39:29 AM
Old 05-13-2009
Try the below code :

Code:
 
 
for i in `cat inp.txt`
do
j=`echo $i |awk '{ print substr($0,1,6) }'`
echo $j
awk -v inp=$j -v inpr=$i  'NF==3{tit=$1};NF==3{if(inp > $2 && inp < $3) print $1"----->"inpr};NF==2{if(inp > $1 && inp < $2) print tit"----->"inpr}' range_ref.txt >> output.txt
done


here wht i hav done :

Code:
 
TESTING>cat inp.txt
935303455
935479875
935477987
937499000
937492355
937860439
935393444
937431000
 
TESTING>cat range_ref.txt
Group0125       935300               935399
Group2006       935400               935476
                     937430               937459
Group0324       935477               935549
                     937480               937499
Group0404       935550               935625
                     937800               937879
 
TESTING>./awk_scr.sh
TESTING>cat output.txt
 
Group0125----->935303455
Group0324----->935479875
Group0324----->937492355
Group0404----->937860439
Group0125----->935393444
Group2006----->937431000

 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Using grep on a range of numbers

Hi im new to unix and need to find a way to grep the top 5 numbers in a file and put them into another file. For example my file looks like this abcdef 50000 abcdef 45000 abcdef 40000 abcdef 35000 abcdef 30000 abcdef 25000 abcdef 20000 abcdef 15000 abcdef 10000 and so on... How can... (1 Reply)
Discussion started by: ProgChick2oo9
1 Replies

2. Shell Programming and Scripting

Inserting a range of consecutive numbers into a text file

I have a text file in the following format .... START 1,1 2,1 3,1 .. .. 9,1 10,1 END .... I want to change to the output to .... START 1,1 2,1 3,1 .. (4 Replies)
Discussion started by: VNR
4 Replies

3. Shell Programming and Scripting

Help with addition of 2 numbers that are read from a file

I am trying to add free and used memory (so that i can compute percentage used)of remote nodes using shell script. I use the openssh-server,expect tool and ssh script. 1)login.txt (info of nodes): ip1|username|password ip2|username|password . . . 3)sshlogin.sh #!/bin/bash ... (1 Reply)
Discussion started by: marmik1903
1 Replies

4. UNIX for Dummies Questions & Answers

Frequency of a range of numbers

Hello, I have a column where there are values from 1 to 150. I want to get the frequency of values in the following ranges: 1-5 6-10 11-15 .... .... .... 146-150 How can I do this in a for loop? Thanks, Guss (1 Reply)
Discussion started by: Gussifinknottle
1 Replies

5. UNIX for Dummies Questions & Answers

How to count how many numbers in a certain range?

Hi I have a data file with two columns which looks like: 1 42 2 40 3 55 4 50 5 38 6 49 7 33 8 46 9 39 10 33 11 33 12 26 13 46 14 44 15 55 16 54 17 30 18 32 (7 Replies)
Discussion started by: marhuu
7 Replies

6. Shell Programming and Scripting

the smallest number from 90% of highest numbers from all numbers in file

Hello All, I am having problem to find what is the smallest number from 90% of highest numbers from all numbers in file. I am having file with thousands of lines and hundreds of columns. I am familiar mainly with bash but I am open to whatever suggestion witch will lead to the solutions. If I... (11 Replies)
Discussion started by: Apfik
11 Replies

7. Shell Programming and Scripting

Read numbers from file

I am trying to make a script to read marks from a file then find out how many of them are above 40 (passing marks). However my script is getting stuck at "read num". I dont understand whats the problem. Any help will be much appreciated. #!/bin/bash set -x count=0; countP=0; PASSMK=40... (6 Replies)
Discussion started by: vish6251
6 Replies

8. Shell Programming and Scripting

Match on a range of numbers

Hi, I'm trying to match a filename that could be called anything from vout001 to vout252 and was trying to do a small test but I'm not getting the result I thought I would.. Can some one tell me what I'm doing wrong? *****@********>echo $mynumber ... (4 Replies)
Discussion started by: Jazmania
4 Replies

9. Shell Programming and Scripting

Adding (as in arithmetic) to numbers in columns in file, and writing new file with new numbers

Hi again. Sorry for all the questions — I've tried to do all this myself but I'm just not good enough yet, and the help I've received so far from bartus11 has been absolutely invaluable. Hopefully this will be the last bit of file manipulation I need to do. I have a file which is formatted as... (4 Replies)
Discussion started by: crunchgargoyle
4 Replies

10. UNIX for Beginners Questions & Answers

Read a file with decimal numbers in bash

Hello, I have the following script while read id fraction do sambamba -h -f bam -t 10 --subsampling-seed=50 -s $frac ${id}.bam -o ${id}.out.bam done < fraction.txt where fraction.txt has two columns (id,fraction) and 50 rows I am unable to run this as bash is not able to read the second... (2 Replies)
Discussion started by: nans
2 Replies
NUMCONV(1)							   User Commands							NUMCONV(1)

NAME
numconv - convert numbers from one number system to another SYNOPSIS
Numconv <options> DESCRIPTION
numconv is a filter that converts integers from one number system to another. For example, it can convert from Roman Numerals such as "CCLVI" to ordinary Western numbers such as "256" or from Western numbers to Chinese. The great majority of number systems, both modern and ancient, are supported, including numerous variants. If the input number system is 'all', the number system will be autodetected. numconv is a command line interface to libuninum a library for converting between textual representations of numbers and machine-internal representations. Further information about the conversions performed is available in the documentation for this library. OPTIONS
-i <input file> Read input from the specified file. -o <output file> Write output into the specified file. -I Identify the number system of the input. -c List the available number system cover terms. -l List the available number systems. -f <input number system> Specify the number system of the input. -t <output number system> Specify the number system of the output. -b <input base> Specify the input base for Western numbers. The base must be in the range [1,36]. -B <output base> Specify the output base for Western numbers. The base must be in the range [1,36]. -g <output general group size> Specify the size of digit groups other than the ow-order group. The default is 3. -G <output low group size> Specify the size of the low-order group of digits. The default is 3. -s <output group separator character> Specify character to use as "thousands separator". The default is a comma. -L Set the output grouping parameters, general group size, first group size, and group separator character, according to the current locale. -m When generating Roman numerals, use unit characters with superscript macron for thousands greater than one instead of Ms. -h Print help information. -v Print version information. EXAMPLES
To convert from Roman Numerals to ordinary Western numbers: numconv -f Roman -t Western_Lower To convert from ordinary Western numbers to the variety of number in current use in the People's Republic of China: numconv -f Western -t Mandarin_Regular_Simplified To convert from ordinary Western numbers to Western numbers in base 2: numconv -f Western_Lower -t Western_Lower -B 2 To convert from Urdu numbers to Hindi numbers with the traditional Indian grouping: numconv -f Perso_Arabic -t Devanagari -g 2 SEE ALSO
libuninum (3) AUTHOR
Bill Poser (billposer@alum.mit.edu) LICENSE
GNU General Public License, version 2. (http://www.gnu.org/licenses/gpl.txt) numconv September 2007 NUMCONV(1)
All times are GMT -4. The time now is 04:15 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy