Grabbing and printing only first number


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Grabbing and printing only first number
# 1  
Old 09-29-2010
Grabbing and printing only first number

I'm having quite a time figuring this one out. I want to print only the first number (n digits). So with this input:


Title 1
2* the thing of it
3 more words
4 some more
*5 what?
6 more and more
*7 I love it
8* boom!
9 it's
*8 still here
10
22 23 1 2134 4 2343 32 23 4 44

The output would be

1
2
3
4
5
6
7
8
9
8
10
22

Thanks guys. I'm new to the sed, awk scene.

jj

---------- Post updated at 11:24 PM ---------- Previous update was at 11:21 PM ----------

I had some leading whitespace in my input, but it looks like it got lost in the post.
# 2  
Old 09-29-2010
Code:
$ ruby -ne 'a=$_.scan(/\d+/);puts a[0]' file

# 3  
Old 09-29-2010
I should say this is the closest I got:

egrep -o '[0-9]+'

---------- Post updated at 11:30 PM ---------- Previous update was at 11:27 PM ----------

@kurumi,

Thanks, I'll give that a try.

All, for my own learning, can anyone do this with sed, awk, egrep or the like?

jj
# 4  
Old 09-29-2010
Code:
$ 
$ 
$ cat f16
Title 1
2* the thing of it
3 more words
4 some more
*5 what?
6 more and more
*7 I love it
8* boom!
9 it's
*8 still here
10
22 23 1 2134 4 2343 32 23 4 44
$ 
$ 
$ perl -lne '/^\D*(\d+)/ and print $1' f16
1
2
3
4
5
6
7
8
9
8
10
22
$ 
$ 

tyler_durden
# 5  
Old 09-29-2010
@kurumi,

almost there, but the "nil" is no good:


Code:
$ ruby -ne 'a=$_.scan(/\d+/);puts a[0]' trout.txt
1
nil
2
3
4
5
6
7
8
9
8
10
22
nil

# 6  
Old 09-29-2010
sed with basic regular expressions:
Code:
sed -n 's/[^0-9]*\([0-9]\{1,\}\).*/\1/p'

sed with extended regular expressions:
Code:
sed -En 's/[^0-9]*([0-9]+).*/\1/p'


Last edited by alister; 09-29-2010 at 01:53 AM.. Reason: replaced {1,} with + in the extended example
This User Gave Thanks to alister For This Post:
# 7  
Old 09-29-2010
awk -

Code:
$ 
$ awk '{sub(/^[^0-9]*/,"",$0); sub(/[* ].*$/,"",$0); print}' f16
1
2
3
4
5
6
7
8
9
8
10
22
$ 
$ 

tyler_durden
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Printing a specific number of spaces

when given a file name, im looking for the most efficient way to turn each letter of the file name into spaces. for instance, the way im thinking of going about this is this: MYFILE=check_disks.sh CHANUM=$(echo ${MYFILE} | awk '{ print length }') printf '%s\n' $CHANUM as you can see... (4 Replies)
Discussion started by: SkySmart
4 Replies

2. UNIX for Dummies Questions & Answers

Assigning a number to a letter without printing it

Hello Unix.com ! Newbie question. With awk, i can we give a particular letter a number without printing the number? input: X|X A|X A|A X|A If field is "A", then it counts as 2 If field is "X", then it counts as 3 Multiply the 2 first field and give the result in the 3th field, but... (7 Replies)
Discussion started by: beca123456
7 Replies

3. Shell Programming and Scripting

Printing Number of Fields with the line number

Hi, How to print the number of fields in each record with the line number? Lets saw I have 3212|shipped|received| 3213|shipped|undelivered| 3214|shipped|received|delivered I tried the code awk -F '|' '{print NF}' This gives me ouput as 3 3 4 (5 Replies)
Discussion started by: machomaddy
5 Replies

4. Shell Programming and Scripting

Printing the line number of first column found

Hello, I have a question on how to find the line number of the first column that contains specific data. I know how to print all the line numbers of those columns, but haven't been able to figure out how to print only the first one that is found. For example, if my data has four columns: 115... (3 Replies)
Discussion started by: user553
3 Replies

5. Shell Programming and Scripting

regarding about printing line number

Hello, I am testing some data to get line number at cursor position 9 and found some problem, the code is below.Assume we got 3 attribute. At second attribute, there are some data(eg.A41/A6) missing like at the fourth and six line 11006 A41 1888 11006 ... (7 Replies)
Discussion started by: davidkhan
7 Replies

6. Shell Programming and Scripting

printing line number

hi, i have a file, i need to search for a string , if the line contains i need to print that line number and line , please help thanks in advance Satya (5 Replies)
Discussion started by: Satyak
5 Replies

7. Shell Programming and Scripting

printing strings in one X number of times from another

I have one file of numbers 4 5 2 ... And another file of strings aaaaa bbbbb ccccc ddddd eeeee ffffff ... I'd like to print the stings from each line in reverse order with some decoration the number of times listed in the first file such as: Yeah bbbbb aaaaa Yeah bbbbb aaaaa (5 Replies)
Discussion started by: dcfargo
5 Replies

8. Shell Programming and Scripting

printing a line number using awk

Hi Chaps, I'm trying to print the line number of a comma delimited file where the second field in the line is blank using AWK. Here is the code I have so far where am I going wrong. It is the last column in the file. nawk -v x==0 'BEGIN {FS=",";OFS=","} x++ if ($2 == " ") print $x' bob.tst ... (3 Replies)
Discussion started by: rjsha1
3 Replies

9. AIX

Printing a number of copies of a txt file

Hi, We have an application running on AIX5.3 that generates text files that are sent to be printed using the lp command. The user can specify the number of copies they want printed, but only one copy ever gets printed. I've checked the lp command that is used, and it correctly specifies... (5 Replies)
Discussion started by: stebradshaw
5 Replies

10. UNIX for Dummies Questions & Answers

printing number of files ONLY in ~ directory

Could someone help me please. I'm trying to write a shell script that prints the number of files I have in my home directory. Files only though, directories not included. I was thinking about using a pipe that includes wc but I don't know any commands that isolate the number of files you have in... (4 Replies)
Discussion started by: fasdafdsf
4 Replies
Login or Register to Ask a Question