extraction of data from a text file which follows certain pattern


 
Thread Tools Search this Thread
Top Forums UNIX for Advanced & Expert Users extraction of data from a text file which follows certain pattern
# 1  
Old 09-22-2008
extraction of data from a text file which follows certain pattern

hi everybody,

i have a file, in it I need to extract some data that follows a particular pattern..

For example: my file contains like

now running Speak225

sep 22 mon 16:34:05 2008

--------------------------------
--------------------------------

now running BBp499

sep 22 mon 16:36:15 2008
------------------------------
----------------------------

I need to get the names which follows "now running" and times in the precceding lines...

for that i need to get the line numbers and extract the required information..
Can anyone please help me.. That pattern exists so many times in the file and i need to get for all the times it happens using shell scripting .thank you
# 2  
Old 09-22-2008
Code:
cat File.txt
now running Speak225
sep 22 mon 16:34:05 2008
sep 22 mon 16:34:05 2008
sep 22 mon 16:34:05 2008
now running BBp499
sep 22 mon 16:36:15 2008
sep 22 mon 16:34:05 2008
sep 22 mon 16:36:15 2008
 
grep 'now running' File.txt | awk '{print $3; cnt++;} END {print "No occurance is " cnt;}'

# 3  
Old 09-22-2008
Hammer & Screwdriver A different approach

Code:
> cat file2
now running Speak225
sep 22 mon 16:34:05 2008
sep 22 mon 16:34:05 2008
sep 22 mon 16:34:05 2008
now running BBp499
sep 22 mon 16:36:15 2008
sep 22 mon 16:34:05 2008
sep 22 mon 16:36:15 2008

> cat file2 | sed "s/now running/~$2/g" | tr "\n" " " | tr "~" "\n" | cut -d" " -f2,6

Speak225 16:34:05
BBp499 16:36:15

# 4  
Old 09-22-2008
cat file2 | sed "s/now running/~$2/g" | tr "\n" " " | tr "~" "\n" | cut -d" " -f2,6

Thank you so much for your response and the solution..

It worked fine..

But i forgot to specify in my question that the names may contain two or three words separated by spaces between them..

Like

now running Speak225 freemin

sep 22 mon 16:34:05 2008

--------------------------------
--------------------------------

now running BBp499 freesms local

sep 22 mon 16:36:15 2008
------------------------------
----------------------------


If you dont mind, Please help me in getting those names i.e "Speak225 freemin" , "BBp499 freesms local" and their respective timings...

That means i need to get all the words in the line after "now running" till the end of that line and the timings from the next line

please...

thank you once again for your response..

If possible please tell me what is "-f2"..

Last edited by mohkris; 09-22-2008 at 10:48 PM..
# 5  
Old 09-23-2008
You can also do what you want to do entirely within sed using back references ....
Code:
$ sed 's/now running \(.*\)/\1/;N; s/\n/ /; s/\(^.* \)\(... .. ... \)\(..:..:..\).*/\1\3/' file
Speak225 freemin 16:34:05
BBp499 freesms local 16:36:15
$

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Data extraction and converting into .csv file.

Hi All, I have a data file and need to extract and convert it into csv format: 1) Read and extract the line containing string ending with "----" (file sample_linebyline.txt file) and to make a .csv file from this. 2) To read the flat file flatfile_sample.txt which consists of similar data (... (9 Replies)
Discussion started by: abhi_123
9 Replies

2. UNIX for Beginners Questions & Answers

Extraction of data between parenthesis using multiple pattern

i want to extract all data with in parenthesis from a file by passing a pattern from another file.i have some sql statements in my file and i want to extract those ddl by refering to a pattern which is in another file and before writting into file i need some transformation to do.Basically i want... (1 Reply)
Discussion started by: raj121
1 Replies

3. Shell Programming and Scripting

Data extraction from .xml file

Hello, I'm attempting to extract 13 digit numbers beginning with 978 from a data file with the following command: awk '{ for(i=1;i<=NF;i++) if($i ~ /^978/) print $i; }' datafile > outfile This typically works. However, the new data file is an .xml file, and this command is no longer working... (6 Replies)
Discussion started by: palex
6 Replies

4. Shell Programming and Scripting

CSV file data extraction

Hi I am writing a shell script to parse a CSV file , in which i am facing a problem to separate the columns . Could some one help me with it. IN301330/00001 pvavan kumar limited xyz@ttccpp.com IN302148/00002 PRECIOUS SECURITIES (P) LTD viash@yahoo.co.in IN300239/00000 CENTRE india... (8 Replies)
Discussion started by: nanduri
8 Replies

5. Shell Programming and Scripting

Data extraction from .txt file

Hey all, i´ve got the following problem: i´m aquiring data with an instrument and i get data in a .txt file. This is how the txt file looks like: Report of AU program poptau F1P=-49.986ppm F2P=-110.014ppm Target directory for serfile: D:/data/Spect500/nmr/Thoma/882 Linear... (17 Replies)
Discussion started by: expikx
17 Replies

6. Shell Programming and Scripting

data extraction from a file

Hi Freinds, I have a file1.txt in the following format File1.txt I want to get 2 files from the above file filextra.txt should have the lines which are ending with "<" and remaining lines in the filecompare.txt file. Please help. (3 Replies)
Discussion started by: i150371485
3 Replies

7. UNIX for Dummies Questions & Answers

Extraction of strings from a file, after pattern matching

I need to extract strings from a file. The file contains data like: Plan ABCD IN-+-172BB---118C2C---GGN_342-+-MM77_23--+-LAS24_3|GGK_774 | | \-LAS24_2|GGN_774 | +-AA_800_1-+-BAS_000|GGK_362 | | \-BAS_001|GGK_360 | \-DD_000T1---DAM_001|STEEL_0 Plan SHELL_1... (3 Replies)
Discussion started by: abkush
3 Replies

8. Shell Programming and Scripting

data extraction from xml file

I have an of xml file as shown below <?xml version='1.0' encoding='ASCII' standalone='yes' ?> <Station Index="10264" > <Number Value="237895890" /> <Position Lat="-29.5" Lon="3.5" /> <MaxDepth Value="-4939" /> <VeloLines Count="24"> <VeloLine Index="0" > <Depth... (3 Replies)
Discussion started by: shashi792
3 Replies

9. Shell Programming and Scripting

Extraction of data from multiple text files, and creation of a chart

Hello dear friends, My problem as explained below seems really basic. Fact is that I'm totally new to programming, and have only a week to produce a script ( CShell or Perl ? ) to perform this action. While searching on the forums, I found a command that could help me, but I don't know... (2 Replies)
Discussion started by: ackheron
2 Replies

10. Shell Programming and Scripting

Data Extraction From a File

Hi All, I have a requirement where I have to search the file with some text say "Exception". This exception word can be repeated for more then 10 times. Suppose the "Exception" word is repeated at line numbers say x=10, 50, 60, 120. Now I want to extract all the lines starting from x-5 to... (3 Replies)
Discussion started by: rrangaraju
3 Replies
Login or Register to Ask a Question