Desired output
I want to extract the lines only if the values in the phi and psi columns between -67<=phi<=-99 and 100<=psi<=165
I would like to save the outputs in to another folder f2 with the input file names. I highly appreciate your valuable suggestions.
I want to extract the lines only if the values in the phi and psi column must between -67<=phi<=-99 and 100<=psi<=165
I would like to save the outputs in to another folder having the input file names. I highly appreciate your valuable suggestions.
Thanks a lot.
There are several problems here. First, and most importantly, your specification requiring a value for PHI that is greater than -67 and simultaneously less than -99 (-67<=phi<= -99) always yields the empty set.
If we assume that you meant -99 <= PHI <= -67, your sample data still produces no output (except for the heading) because only the fifth line of your input file has a PSI value between 100 and 165, and the PHI value on that line is -43.9 (which is out of range). These values are marked in red above.
When Akshay provided his suggested code, he apparently didn't notice that the data under the heading "STRUCTURE" looks like 0, 1, 2, or 3 fields to awk (when using the default field delimiter). Yoda compensated for that problem, but apparently didn't notice that sometimes there are no field delimiters between values under the headings KAPPA, ALPHA, PHI, and PSI. Some samples of this problem are marked in green above. So, rather than using field delimiters, any code processing these lines will have to be based on column positions in the input file; not field counts.
Are there ever any <tab> characters in your input files? Or, are all of the spaces between fields just sequences of <space> characters?
Please provide us with a specification that doesn't always produce an empty set, and provide us some sample input that includes some lines that will be selected as well as some lines that will be rejected. And, show us the sample output you expect to be produced for that sample input.
And, please tell us how the name of the directory to contain the new files will be passed to your script.
Last edited by Don Cragun; 01-25-2014 at 04:39 PM..
Reason: fix typo
These 2 Users Gave Thanks to Don Cragun For This Post:
Thank you very much for your suggestions. I have rephrased my question below and changed the data. Please have a look at the question.
I have a folder f1 that contains some files. The content of the files are shown below.
Desired output
I want to extract the lines only if the values in the phi and psi columns between -67<=phi<=-99 and 100<=psi<=165
I would like to save the outputs in to another folder f2 with the input file names. I highly appreciate your valuable suggestions.
Thanks a lot.
Moderator's Comments:
I have restored post #1 to its original content and added the new data into this post, otherwise the thread would be difficult to follow
Moderator's Comments:
I have picked up some more of the updates to original posting so this message gives a complete picture of what is now being requested.
Last edited by Don Cragun; 01-26-2014 at 03:44 PM..
Reason: Pick up the requested selection criteria and delete the out of range output.
I used to use this script to extract the same lines from two files:
grep -f file1 file2 > outputfile
now I have file1 AB029895
AF208401
AF309648
AF526378
AJ444445
AJ720950
AJ851546
AY568629
AY591907
AY994087
BU116401
BU116599
BU119689
BU121308
BU125622
BU231446
BU236750
BU237045 (4 Replies)
I have a text and I want to extract the 4 lines following a keyword!
For example if I have this text and the keyword is AAA
hello
helloo
AAA
one
two
three
four
helloooo
hellooo
I want the output to be
one
two
three
four (7 Replies)
I have an xml file with the below data:
unix>Cat address.xml
<Address City=”Amsterdam”
Street = “station straat”
ZIPCODE="2516 CK "
</Address>
<Address City=”Amsterdam”
Street = “Leeuwen straat”
ZIPCODE="2517 AB "
</Address>
<Address City=”The Hauge”
Street = “kirk straat”
... (1 Reply)
Hi all,
I need to extract lines between the lines 'RD' and 'QA' from a text file (following). there are more that one of such pattern in the file and I need to extract all of them. however, the number of lines between them is varied in the file. Therefore, I can not just use 'grep -A' command.... (6 Replies)
Hi Guys,
I have a situation wherein I need to extract two lines from below the search string.
Eg.
Current:
$ grep "$(date +'%a %b %e')" alert.log
Mon Apr 12 03:58:10 2010
Mon Apr 12 12:51:48 2010
$
Here I would like the display to be something like
Mon Apr 12... (6 Replies)
I have two files
file A which have a number in every row and file B which contains few hundred thousand rows with about 300 characters in each row (csv)
What I need is to extract whole rows from B file (only these which numbers are indicated in A file)
I also need to use cygwin.
Any... (7 Replies)
hi all,
I have three files.
The first file (FILE_INFO in my code) consists of four parameters for each line.
0.00765600 0.08450704 M3 E3
0.00441931 0.04878049 M4 E5
0.01904574 0.21022727 M5 E10
0.00510400 0.05633803 M6 E12
0.00905960 ... (11 Replies)
I regularly extract lines of text from files based on the presence of a particular keyword; I place the extracted lines into another text file. This takes about 2 hours to complete using the "sort" command then Kate's find & highlight facility.
I've been reading the forum & googling and can find... (4 Replies)
Hi
I want to extract certain text between two line numbers like
23234234324 and
54446655567567
How do I do this with a simple sed or awk command?
Thank you.
---------- Post updated at 06:16 PM ---------- Previous update was at 05:55 PM ----------
found it:
sed -n '#1,#2p'... (1 Reply)