![]() |
|
|
|
|
|||||||
| Forums | Portal | Register | Forum Rules | FAQ | Contribute | Members List | Arcade | Search | Today's Posts | Mark Forums Read |
| UNIX for Dummies Questions & Answers If you're not sure where to post a UNIX or Linux question, post it here. All UNIX and Linux newbies welcome !! |
|
|
Submit Tools | LinkBack | Thread Tools | Display Modes |
|
|||
|
Any help?
This is what I need to do to sort out the results from a script:
I know the first half is right, but the second half is what's getting me. The file has 6 fields like this word numbers numbers numbers numbers numbers and I only care about finding numbers in the 6th field that have even numbers. It finds some but not all because when I cat the .txt I can see some of them didn't go over. I know I could copy the rest but I would like to understand how to do it the first time. Here's what I have: grep "^[A-Z].*[tcz].* [1-9][02468][0-9]*$" /home/public/data.txt | sort -nk3 | head -83 | tail -43 | sort -nk2 > ~/program.txt I have cursed and strained over this for awhile. Anyone know what I am doing wrong? Thanks in advance Edited to make more sense. Last edited by OmegaRed; 12-01-2005 at 07:43 PM. Reason: to make more sense |
| Forum Sponsor | ||
|
|
|
|||
|
field seperators eh? I'm not sure how to do those, are those the things liek this
[0-9]{1,5}? The squiggly brackets? And the head and tail, I threw in for fun because I was trying to see if I could make my pipe even longer and still work. The only thing I'm really concerned about is the grepping the numbers part, I don't seem to get all of them. If the squiggly's are field seperators I'll try them. |
|
|||
|
It would help if you could provide a bit more information in the following order:
1. what you want to achieve in short words 2. a significant sample of your input data 3. a significant sample of the output you get right now 4. a description of in which way the output you get deviates from the desired result bakunin |
|
|||
|
Hi bakunin, it's for a C program I worte, I want to grep the results specifically.
1. What I really want to achieve is find all the lines (I can figure out the piping of the sort stuff) that start with a capital at the beginning, have a 't', 'c', or 'z' anywhere in the word (although I know that part is correct, and the letters I just picked arbitrarily as part of the test) and then has an even number in the 6th field. 2. Sample input from my program would be like: Shawn 12345 24 567 5 10102 Matthew 12 5467 1111 9 1919 Catherine 555 1234 1 1 33142 thomas 66 7777 087 33 12121 3. Sample output: Catherine 555 1234 1 1 33142 4. The output only deviates in that I don't get ALL the lines because I compared the file I am grepping and the file I appended to and not all were there. So I have for the grep: grep "^[A-Z].*[tcz].* [1-9][02468][0-9]*$" /home/public/data.txt Thanks for the replies. |