print all the rows from "BUY" Tag with "SELL" with Buy/sell tag at end


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting print all the rows from "BUY" Tag with "SELL" with Buy/sell tag at end
# 1  
Old 07-02-2009
print all the rows from "BUY" Tag with "SELL" with Buy/sell tag at end

hi I have the following input and i want to print all the rows from "BUY" Tag till "SELL" alongwith Buy/sell tag at end of each row

Code:
------
INPUT
=====
30/06/2009,NORMAL,ALL,ALL
BUY
1,CBLO/020709,T+0,30/06/2009,100.00,3.00,999835643.46,200906300000422,-, 15:04:42,BUY
2,CBLO/020709,T+0,30/06/2009,100.00,3.01,999835095.69,200906300000421,-, 15:04:42,BUY
3,CBLO/020709,T+0,30/06/2009,10.00,2.90,99984112.11,200906300000296,-, 13:32:34,BUY
4,CBLO/020709,T+0,30/06/2009,100.00,2.90,999841121.14,200906300000295,-, 13:32:34,BUY
5,CBLO/020709,T+0,30/06/2009,50.00,2.90,499920560.57,200906300000294,-, 13:32:34,BUY
6,CBLO/020709,T+0,30/06/2009,30.00,2.91,299952172.01,200906300000293,-, 13:32:34,BUY
SELL
1,CBLO/020709,T+0,30/06/2009,40.00,3.24,399928998.91,200906300000038,-, 09:47:22,SELL
2,CBLO/020709,T+0,30/06/2009,50.00,3.24,499911248.63,200906300000037,-, 09:47:22,SELL
3,CBLO/020709,T+0,30/06/2009,10.00,3.24,99982249.73,200906300000036,-, 09:47:22,SELL
4,CBLO/020709,T+0,30/06/2009,100.00,3.25,999821949.52,200906300000024,-, 09:31:09,SELL
5,CBLO/020709,T+0,30/06/2009,100.00,3.25,999821949.52,200906300000023,-, 09:31:09,SELL
6,CBLO/020709,T+0,30/06/2009,100.00,3.10,999830165.83,200906300000007,-, 09:11:55,SELL
7,CBLO/020709,T+0,30/06/2009,200.00,3.10,1999660331.67,200906300000006,-, 09:11:49,SELL
8,CBLO/020709,T+0,30/06/2009,200.00,3.05,1999665809.28,200906300000002,-, 09:11:28,SELL
390.00,800.00
3899368704.98,7998622703.09

====================================
OUTPUT
======
1,CBLO/020709,T+0,30/06/2009,100.00,3.00,999835643.46,200906300000422,-, 15:04:42,BUY
2,CBLO/020709,T+0,30/06/2009,100.00,3.01,999835095.69,200906300000421,-, 15:04:42,BUY
3,CBLO/020709,T+0,30/06/2009,10.00,2.90,99984112.11,200906300000296,-, 13:32:34,BUY
4,CBLO/020709,T+0,30/06/2009,100.00,2.90,999841121.14,200906300000295,-, 13:32:34,BUY
5,CBLO/020709,T+0,30/06/2009,50.00,2.90,499920560.57,200906300000294,-, 13:32:34,BUY
6,CBLO/020709,T+0,30/06/2009,30.00,2.91,299952172.01,200906300000293,-, 13:32:34,BUY
1,CBLO/020709,T+0,30/06/2009,40.00,3.24,399928998.91,200906300000038,-, 09:47:22,SELL
2,CBLO/020709,T+0,30/06/2009,50.00,3.24,499911248.63,200906300000037,-, 09:47:22,SELL
3,CBLO/020709,T+0,30/06/2009,10.00,3.24,99982249.73,200906300000036,-, 09:47:22,SELL
4,CBLO/020709,T+0,30/06/2009,100.00,3.25,999821949.52,200906300000024,-, 09:31:09,SELL
5,CBLO/020709,T+0,30/06/2009,100.00,3.25,999821949.52,200906300000023,-, 09:31:09,SELL
6,CBLO/020709,T+0,30/06/2009,100.00,3.10,999830165.83,200906300000007,-, 09:11:55,SELL
7,CBLO/020709,T+0,30/06/2009,200.00,3.10,1999660331.67,200906300000006,-, 09:11:49,SELL
8,CBLO/020709,T+0,30/06/2009,200.00,3.05,1999665809.28,200906300000002,-, 09:11:28,SELL

# 2  
Old 07-02-2009
grep -e ",BUY" -e ",SELL" filename
# 3  
Old 07-02-2009
What you have written in words and what you have shown as output is not precisely same...
Please try the below code...
Code:
awk '/[0-9]+,*[BUY|SELL]/{print }' in

# 4  
Old 07-02-2009
sory for the confusion the input and output is listed below

------
INPUT
=====
Code:
30/06/2009,NORMAL,ALL,ALL
BUY
1,CBLO/020709,T+0,30/06/2009,100.00,3.00,999835643.46,200906300000422,-, 15:04:42
2,CBLO/020709,T+0,30/06/2009,100.00,3.01,999835095.69,200906300000421,-, 15:04:42
3,CBLO/020709,T+0,30/06/2009,10.00,2.90,99984112.11,200906300000296,-, 13:32:34
4,CBLO/020709,T+0,30/06/2009,100.00,2.90,999841121.14,200906300000295,-, 13:32:34
5,CBLO/020709,T+0,30/06/2009,50.00,2.90,499920560.57,200906300000294,-, 13:32:34
6,CBLO/020709,T+0,30/06/2009,30.00,2.91,299952172.01,200906300000293,-, 13:32:34
SEL
1,CBLO/020709,T+0,30/06/2009,40.00,3.24,399928998.91,200906300000038,-, 09:47:22
2,CBLO/020709,T+0,30/06/2009,50.00,3.24,499911248.63,200906300000037,-, 09:47:22
3,CBLO/020709,T+0,30/06/2009,10.00,3.24,99982249.73,200906300000036,-, 09:47:22
4,CBLO/020709,T+0,30/06/2009,100.00,3.25,999821949.52,200906300000024,-, 09:31:09
5,CBLO/020709,T+0,30/06/2009,100.00,3.25,999821949.52,200906300000023,-, 09:31:09
6,CBLO/020709,T+0,30/06/2009,100.00,3.10,999830165.83,200906300000007,-, 09:11:55
7,CBLO/020709,T+0,30/06/2009,200.00,3.10,1999660331.67,200906300000006,-, 09:11:49
8,CBLO/020709,T+0,30/06/2009,200.00,3.05,1999665809.28,200906300000002,-, 09:11:28
390.00,800.00
3899368704.98,7998622703.09

OUTPUT
Code:
1,CBLO/020709,T+0,30/06/2009,100.00,3.00,999835643.46,200906300000422,-, 15:04:42,BUY
2,CBLO/020709,T+0,30/06/2009,100.00,3.01,999835095.69,200906300000421,-, 15:04:42,BUY
3,CBLO/020709,T+0,30/06/2009,10.00,2.90,99984112.11,200906300000296,-, 13:32:34,BUY
4,CBLO/020709,T+0,30/06/2009,100.00,2.90,999841121.14,200906300000295,-, 13:32:34,BUY
5,CBLO/020709,T+0,30/06/2009,50.00,2.90,499920560.57,200906300000294,-, 13:32:34,BUY
6,CBLO/020709,T+0,30/06/2009,30.00,2.91,299952172.01,200906300000293,-, 13:32:34,BUY
1,CBLO/020709,T+0,30/06/2009,40.00,3.24,399928998.91,200906300000038,-, 09:47:22,SELL
2,CBLO/020709,T+0,30/06/2009,50.00,3.24,499911248.63,200906300000037,-, 09:47:22,SELL
3,CBLO/020709,T+0,30/06/2009,10.00,3.24,99982249.73,200906300000036,-, 09:47:22,SELL
4,CBLO/020709,T+0,30/06/2009,100.00,3.25,999821949.52,200906300000024,-, 09:31:09,SELL
5,CBLO/020709,T+0,30/06/2009,100.00,3.25,999821949.52,200906300000023,-, 09:31:09,SELL
6,CBLO/020709,T+0,30/06/2009,100.00,3.10,999830165.83,200906300000007,-, 09:11:55,SELL
7,CBLO/020709,T+0,30/06/2009,200.00,3.10,1999660331.67,200906300000006,-, 09:11:49,SELL
8,CBLO/020709,T+0,30/06/2009,200.00,3.05,1999665809.28,200906300000002,-, 09:11:28,SELL


Last edited by vgersh99; 07-02-2009 at 03:07 PM.. Reason: code tags, PLEASE!
# 5  
Old 07-02-2009
To keep the forums high quality for all users, please take the time to format your posts correctly.

Please validate the proper code tag application. [Moderator]

First of all, use Code Tags when you post any code or data samples so others can easily read your code. You can easily do this by highlighting your code and then clicking on the # in the editing menu. (You can also type code tags [code] and [/code] by hand.)

Second, avoid adding color or different fonts and font size to your posts. Selective use of color to highlight a single word or phrase can be useful at times, but using color, in general, makes the forums harder to read, especially bright colors like red.

Third, be careful when you cut-and-paste, edit any odd characters and make sure all links are working property.

Thank You.

The UNIX and Linux Forums
# 6  
Old 07-03-2009
Try this....There should be some other better solution..

Code:
csplit -f out inputfile '/SEL/'
grep 'CBLO' out00 >tmp1
sed 's/.*/&,BUY/' tmp1 >finalout
grep 'CBLO' out01 >tmp2
sed 's/.*/&,SEL/' tmp2 >>finalout


Last edited by Neo; 07-03-2009 at 11:23 AM.. Reason: code tags
Login or Register to Ask a Question

Previous Thread | Next Thread

6 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

find files in sub dir with tag & add "." at the beginning [tag -f "Note" . | xargs -0 {} mv {} .{}]

I am trying find files in sub dir with certain tags using tag command, and add the period to the beginning. I can't use chflags hidden {} cause it doesn't add period to the beginning of the string for web purpose. So far with my knowledge, I only know mdfind or tag can be used to search files with... (6 Replies)
Discussion started by: Nexeu
6 Replies

2. Shell Programming and Scripting

Bash script - Print an ascii file using specific font "Latin Modern Mono 12" "regular" "9"

Hello. System : opensuse leap 42.3 I have a bash script that build a text file. I would like the last command doing : print_cmd -o page-left=43 -o page-right=22 -o page-top=28 -o page-bottom=43 -o font=LatinModernMono12:regular:9 some_file.txt where : print_cmd ::= some printing... (1 Reply)
Discussion started by: jcdole
1 Replies

3. UNIX for Dummies Questions & Answers

Using "mailx" command to read "to" and "cc" email addreses from input file

How to use "mailx" command to do e-mail reading the input file containing email address, where column 1 has name and column 2 containing “To” e-mail address and column 3 contains “cc” e-mail address to include with same email. Sample input file, email.txt Below is an sample code where... (2 Replies)
Discussion started by: asjaiswal
2 Replies

4. Shell Programming and Scripting

awk command to replace ";" with "|" and ""|" at diferent places in line of file

Hi, I have line in input file as below: 3G_CENTRAL;INDONESIA_(M)_TELKOMSEL;SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL My expected output for line in the file must be : "1-Radon1-cMOC_deg"|"LDIndex"|"3G_CENTRAL|INDONESIA_(M)_TELKOMSEL"|LAST|"SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL" Can someone... (7 Replies)
Discussion started by: shis100
7 Replies

5. Shell Programming and Scripting

cat $como_file | awk /^~/'{print $1","$2","$3","$4}' | sed -e 's/~//g'

hi All, cat file_name | awk /^~/'{print $1","$2","$3","$4}' | sed -e 's/~//g' Can this be done by using sed or awk alone (4 Replies)
Discussion started by: harshakusam
4 Replies

6. UNIX for Dummies Questions & Answers

Explain the line "mn_code=`env|grep "..mn"|awk -F"=" '{print $2}'`"

Hi Friends, Can any of you explain me about the below line of code? mn_code=`env|grep "..mn"|awk -F"=" '{print $2}'` Im not able to understand, what exactly it is doing :confused: Any help would be useful for me. Lokesha (4 Replies)
Discussion started by: Lokesha
4 Replies
Login or Register to Ask a Question