Read data from one file and putting in new file ??


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Read data from one file and putting in new file ??
# 1  
Old 12-04-2008
Read data from one file and putting in new file ??

Hello All,

I have a file which contain data something like this:


CELL 2 TEST AND DIAGNOSTIC UNIT 2
CELL 2, CDM 1 CBR 1 TRANSMIT PORT (TXPORT) 1
CELL 2, CDM 1 CBR 2 TRANSMIT PORT (TXPORT) 1
CELL 2, CDM 1 CBR 3 TRANSMIT PORT (TXPORT) 1
CELL 2, CDM 1 CBR 1 TRANSMIT PORT (TXPORT) 2
CELL 2, CDM 1 CBR 2 TRANSMIT PORT (TXPORT) 2
CELL 2, CDM 1 CBR 3 TRANSMIT PORT (TXPORT) 2

CELL 3 PACKET PIPE (PP) 3
CELL 3, CDM 1 CBR 3 TRANSMIT PORT (TXPORT) 1

CELL 4 TIME FREQUENCY UNIT (TFU) 1
CELL 4 TEST AND DIAGNOSTIC UNIT 2
CELL 4, CDM 1 PRIMARY SIGNALING LINK
CELL 4, CDM 1 ALTERNATE SIGNALING LINK
CELL 4 PACKET PIPE (PP) 1
CELL 4 PACKET PIPE (PP) 2
CELL 4 PACKET PIPE (PP) 3

What i want is that i read that file and those lines which starts from cell 2 copies and paste into new file named cell2 in the same directory, same as for cell 2 and cell 3 and 4. Its mean that 3 new files will be created named cell2,cell3 & cell4.

Any idea how i can do this ??

Regards,
Waqas Ahmed
# 2  
Old 12-04-2008
cat cell | grep "CELL 2" > cell2
or
sed -n -e "/CELL 2/p" cell > cell2
or
awk '/CELL 2/{print $0}' cell > cell2
# 3  
Old 12-04-2008
Hi,

the following script reads in the file line by line, then extracts
the filenumber from string, constructs the corresponding filename
and prints the matching information to this file. Blank lines are
delete.

Code:
while read line 
do 
[[ $line = *CELL* ]] \
&& FILENUMBER=$(sed 's/CELL \([0-9]\+\)[ ,].*/\1/' <<< $line) \
&& echo $line >> cell${FILENUMBER} 
done < file

HTH Chris
# 4  
Old 12-04-2008
Hello All,

I used this : cat cell | grep "CELL 2" > cell2 to read file named cell and to grep only lines that starts from cell 2. But when i open the output file cell2 so it also contain lines starting from cell 21 22 23 to 29.
But my requirement is that output file cell2 only contains lines that starts from cell 2 not from cell21 to 29.
I hope you understand what i am saying.

How i can do that?

Regards,
Waqas Ahmed
# 5  
Old 12-04-2008
Try this:

Code:
awk -F" |," 'NF{print > tolower($1$2)}' file

Use nawk or /usr/xpg4/bin/awk on Solaris.

Regards
# 6  
Old 12-04-2008
Hi,

firstly: you don't need cat: grep "pattern" file is enough.
secondly: your regexp search for all patterns matching "CALL 2"
at "any position of any length".

Code:
grep "^CELL 2[ ,]" file

Will match only lines starting with "CELL" followed by "2" and a space
or comma.

Try my solutions. It should give you what you want. Save it in a
file a make it executable or run it from the command line.
# 7  
Old 12-04-2008
Hello Christoph Spohr

Can you please tell me the usage procedure of your code:

Code:
while read line 
do 
[[ $line = *CELL* ]] \
&& FILENUMBER=$(sed 's/CELL \([0-9]\+\)[ ,].*/\1/' <<< $line) \
&& echo $line >> cell${FILENUMBER} 
done < file

where i have to put the filename which will be read.

i save your code and make it executable but its giving below error:
KarachiOMP root> ./co
./co: syntax error at line 6: `FILENUMBER=$' unexpected
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

In PErl script: need to read the data one file and generate multiple files based on the data

We have the data looks like below in a log file. I want to generat files based on the string between two hash(#) symbol like below Source: #ext1#test1.tale2 drop #ext1#test11.tale21 drop #ext1#test123.tale21 drop #ext2#test1.tale21 drop #ext2#test12.tale21 drop #ext3#test11.tale21 drop... (5 Replies)
Discussion started by: Sanjeev G
5 Replies

2. Shell Programming and Scripting

Read csv file, convert the data and make one text file in UNIX shell scripting

I have input data looks like this which is a part of a csv file 7,1265,76548,"0102:04" 8,1266,76545,"0112:04" I need to make the output data should look like this and the output data will be part of text file: 7|1265000 |7654899 |A| 8|12660000 |76545999 |B| The logic behind the... (6 Replies)
Discussion started by: RJG
6 Replies

3. UNIX for Dummies Questions & Answers

How to read data from zip file?

Hi All, could you please answer the below question. 1)How to read the data from zip file without unzip? Regards Priyanka (2 Replies)
Discussion started by: pspriyanka
2 Replies

4. Shell Programming and Scripting

Read file data and send to different file

junk.txt has a single numerical value in it, let's say 50421.44. over.namelist has lots of expressions in it, but somewhere random it says value = x.x I need to go into junk.txt, pull out the number, and amend over.namelist to say value = 50421.44. :(:( I'm trying to use sed, but... (5 Replies)
Discussion started by: jammyjames
5 Replies

5. Shell Programming and Scripting

Want to read data from a file name.txt and search it in another file and then matching...

Hi Frnds... I have an input file name.txt and another file named as source.. name.txt is having only one column and source is having around 25 columns...i need to read from name.txt line by line and search it in source file and then save the result in results file.. I have a rough idea about the... (15 Replies)
Discussion started by: ektubbe
15 Replies

6. Shell Programming and Scripting

Read the apecific data from one file and write into another file

Hi, I would like to read the specific data from file and write the data in the new file. My data input is something like this.. <EXROP:R=TJ0311T; ROUTE DATA R ROUTE PARAMETERS TJ0311T DETY=UPDR TTRANS=1 FNC=3 MA=628160955000 R=TJ0311D ... (3 Replies)
Discussion started by: bha148
3 Replies

7. Shell Programming and Scripting

Read data in XML file

Hello Everybody, I have a question on reading the data from XML file through KSH shell script. In the below file I need to collect the patient control no and its respective insured id. I need to have pair of these values in single line separated by some special character, so that I could use... (2 Replies)
Discussion started by: swame_sp
2 Replies

8. Shell Programming and Scripting

Post Shell programming: Question about source a file and read data from the file

This is shell programming assignment. It needs to create a file called .std_dbrc contains STD_DBROOT=${HOME}/class/2031/Assgn3/STD_DB (which includes all my simple database files) and I am gonna use this .std_dbrc in my script file (read the data from the database files) like this: .... (3 Replies)
Discussion started by: ccwq
3 Replies

9. Shell Programming and Scripting

Read from data file

Hi, I have a data file formatted like this: Ex: Mike 3434 Jack 481 Peter 12 Alan 926 I want to get this data into 2 variables: "Names" and "Numbers" that I can using one "for" loop to get the value as Names and Numbers Like this: for i in 0 1 2 3 do echo $Names echo... (12 Replies)
Discussion started by: fongthai
12 Replies

10. Shell Programming and Scripting

Read data from a file into a variable

I am a FORTRAN guy and not a UNIX expert by any means so sorry if this sounds dumb, but all I want to do is have a UNIX script which reads data from a file (say 1000 lines worth, each row is a file name) and store it in an array to perform an operation on later. As maddeningly simple as this... (2 Replies)
Discussion started by: yorkdg
2 Replies
Login or Register to Ask a Question