Sponsored Content
Top Forums Shell Programming and Scripting Detect continuous number as range Post 302974029 by before4 on Wednesday 25th of May 2016 03:38:23 AM
Old 05-25-2016
Work perfect, many thanks
Code:
root@svr:/var/tmp# more sample.txt 
151442
15144200113571
190370299
2010
212526
212527
212529
212533
212534
212538
212546
212547

root@svr:/var/tmp# awk 'NR==1{Q=T=$0}NR>1{if(($0-Q)==1){q=0;} else {if(T==Q){print Q;T=$0} else {print T OFS Q;T=$0}}};{Q=$0} END{print T OFS Q}'  sample.txt 
151442
15144200113571
190370299
2010
212526 212527
212529
212533 212534
212538
212546 212547

root@svr:/var/tmp# awk 'NR==1{first=$0;prev=$0;next }
> $0 - prev == 1 { prev=$0; next } { if (first != prev) { print first,prev;} else { print prev} prev=$0;first=$0 } END { print  first,prev;}' sample.txt
151442
15144200113571
190370299
2010
212526 212527
212529
212533 212534
212538
212546 212547


Last edited by before4; 05-25-2016 at 04:44 AM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

validate number range

Hi If I want to read user input and want to validate if it is a numeric number in some range of 1-100 what would be the best way? Sabina (5 Replies)
Discussion started by: sabina
5 Replies

2. Shell Programming and Scripting

extract number range from a file

Hi Everyone, a.txt 1272904667;1272904737;1 1272904747;1272904819;1 1272904810;1272904857;1 1272904889;1272904926;1 1272905399;1272905406;1 1272905411;1272905422;1 if i want to get the record, when the a.txt 1st field is between 1272904749 and 1272905399, any simple way by using awk,... (1 Reply)
Discussion started by: jimmy_y
1 Replies

3. Shell Programming and Scripting

Number range for SSNs

Hi All. I have a file that has an ID Number field....some of the ID Numbers are actual SSNs. ...does anyone know the range that SSNs may be...this is what I have found so far poking around SSN info sites.... greater than 001-01-0000 and less than 770-00-0000. Does anyone know this to be... (1 Reply)
Discussion started by: lyoncc
1 Replies

4. Shell Programming and Scripting

Closest Number from a Range of Numbers

out of a range of numbers, how can i pick out the number that is the closest to any arbitrary/random number that a user supplies? say the range of numbers are between 1 - 90000. but that doesn't mean each number exist between 1 - 90000. the range of numbers could be for example: 1, 3, 4, 6,... (6 Replies)
Discussion started by: SkySmart
6 Replies

5. Shell Programming and Scripting

how can I detect number series range

Hi I have one source file and content of source file as follows; 3 00 3 01 3 02 3 07 3 09 3 10 3 15 3 16 3 17 3 18 3 40 3 45 3 500 3 501 3 502 3 70 3 80 (8 Replies)
Discussion started by: kocaturk
8 Replies

6. Shell Programming and Scripting

Range of number from 0.1 to 10.0

Is there a way to create a loop that will output number starting from 0.1 to 10.0 0.1 0.2 0.3 0.4 0.5 .. ... 10.0 This is what i tried. for i in {1..50}; do printf -v i '%02d' $i ; echo "$i"; done That will print 01 02 03 .. .. 50 (9 Replies)
Discussion started by: vietrice
9 Replies

7. Shell Programming and Scripting

If statement test against number range [0-9]

Is it possible to test against a varible within a ranges in a if statement. ex. if ];then echo "not in range" else echo "number within range" fi (8 Replies)
Discussion started by: leemalloy
8 Replies

8. Shell Programming and Scripting

Fill data if number range is given

Hi I want to get all numbers if number range is given as input. Eg: INPUT FILE 100-105 107 108-112 OUTPUT REQUIRED: 100 101 102 103 104 105 107 108 109 110 111 112 How can I do it using shell? :confused: Thanks in advance. (11 Replies)
Discussion started by: dashing201
11 Replies

9. Shell Programming and Scripting

Generating Random Number in certain range

Hi there I am trying to generate a random number between 40 and 70 using the shell here is my code so far and it keeps going above 70. all help much appreciated! comp=$(( RANDOM%70+40 )) echo $comp (4 Replies)
Discussion started by: faintingquiche
4 Replies

10. UNIX for Dummies Questions & Answers

Using sed to replace a range of number

Trying to use SED to replace numbers that fall into a range but can't seem to get the logic to work and am wondering if SED will do this. I have a file with the following numbers 3 26 20 5. For the numbers that are greater than zero and less than 25, SED would add the word range after the... (7 Replies)
Discussion started by: jimmyf
7 Replies
wtmpconvert(8)						      System Manager's Manual						    wtmpconvert(8)

NAME
wtmpconvert - Modify connect time accounting records from DIGITAL UNIX releases 4.0x and prior to new format SYNOPSIS
/usr/lbin/wtmpconvert [-vnrp?h] input_file [output_file] OPTIONS
Restore new format to old format. Verbose. Display lines while converting. Do not preserve contents of input file. Formatted print only. Do not convert. (May be used with the -r option). Display usage message. DESCRIPTION
The wtmpconvert command reads records from a connect time accounting file, such as /var/adm/wtmp, and converts the record format to the updated struct utmp format. If no output file is specified or if the output file path is identical to the input file path, wtmpconvert makes a backup copy of the original input file using the following algorithm: If filename.orig exists. Where n is a unique number. The wtmpconvert command attempts to detect an input file that is in the wrong format (for example, input file is already a new format file). A warning message is issued in this case, but conversion continues. EXIT STATUS
Success. An error occurred. EXAMPLES
To convert an old format accounting file to the new format: wtmpconvert /var/adm/wtmp.prev Upon completion of this command, /var/adm/wtmp.prev will have been converted to the new format. The original /var/adm/wtmp.prev is renamed to /var/adm/wtmp.prev.orig. To convert a wtmp file in new format to the old format: wtmpconvert -r /var/adm/wtmp /var/adm/wtmp.old FILES
Accounting header files that define the format for the login database file. The active login/logoff database files. SEE ALSO
Commands: acct(8), acctcon(8), acctmerg(8), date(1), runacct(8) Functions: getutent(3) Files: utmp(4), wtmp(4) wtmpconvert(8)
All times are GMT -4. The time now is 04:09 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy