How to preserve the same text and modify the same text to append?


 
Thread Tools Search this Thread
Top Forums UNIX for Beginners Questions & Answers How to preserve the same text and modify the same text to append?
# 1  
Old 10-06-2019
How to preserve the same text and modify the same text to append?

Hi,

I have an issue modifying a file. Below is the content of the file.

File name - a.txt
Code:
SELECT LISTAGG(SCORE),   LISTAGG(VB), 
	   LISTAGG(SCORE*12 + 3),
	   LISTAGG(DOB) 
	   from T_CONCAT ;
	   
SELECT LISTAGG(SCORE),
       LISTAGG(VB),
	   LISTAGG(SCORE*100 + 3),
	   from T_CONCAT ;

This is what I desired to come:-

Code:
--ignore begin
SELECT LISTAGG(SCORE),   LISTAGG(VB), 
	   LISTAGG(SCORE*12 + 3),
	   LISTAGG(DOB) 
	   from T_CONCAT ;
--ignore end

SELECT CountMannuArray(LISTAGG(SCORE)),
       CountMannuArray(LISTAGG(VB)),
	   CountMannuArray(LISTAGG(SCORE*12 + 3)),
	   CountMannuArray(LISTAGG(DOB)) 
	   from T_CONCAT ;

--ignore begin	   
SELECT LISTAGG(SCORE),
       LISTAGG(VB),
	   LISTAGG(SCORE*100 + 3),
	   from T_CONCAT ;	   
--ignore end

SELECT CountMannuArray(LISTAGG(SCORE)),
       CountMannuArray(LISTAGG(VB)),
	   CountMannuArray(LISTAGG(SCORE*100 + 3)),
	   CountMannuArray(LISTAGG(DOB)) 
	   from T_CONCAT ;

I find it difficult to preserve the same text and put it in --ignore begin and --ignore end clause.

Other one is achieved by
Code:
sed -i  's/LISTAGG/CountMannuArray(LISTAGG/g;s/)/))/g' a.txt

Please advice.
# 2  
Old 10-06-2019
Hi, try:

Code:
awk '
  /SELECT *LISTAGG/ {
    printf "--ignore begin\n%s\n--ignore end\n\n", $0
    gsub(/LISTAGG[^)]*\)/,"CountMannuArray(&)")
  }
  {
    print
  }
' RS= ORS='\n\n' file

This only works if there are really no spaces on the empty lines that separate the SELECT statements.

Last edited by Scrutinizer; 10-06-2019 at 05:25 AM..
This User Gave Thanks to Scrutinizer For This Post:
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Modify text file using sed

Hello all, I have some text files I need to do the following on: Delete banner page (lines 1-56) --I am doing this using sed Remove ^M --I am doing this using vi Remove trailer page --this can vary based on the contents of the file, it usually starts with *************************** I am... (5 Replies)
Discussion started by: jeffs42885
5 Replies

2. Shell Programming and Scripting

Modify text file using awk

I have text file with lines as shown here. Each row has 11 columns separated by tab. In each row, i want to split the 8th column such that the output should look like shown below. Here value in the 9th column is DP value and in the 10th column is MQ value followed by the values after resource.EFF=.... (15 Replies)
Discussion started by: mehar
15 Replies

3. Shell Programming and Scripting

Modify one line in a plain text file

Hi everyone, I want to know, if there is a way to modify one line in a text file with unix script, with out re-writing all the file. For example, i have this file: CONFIGURATION_1=XXXX CONFIGURATION_2=YYYY CONFIGURATION_3=ZZZZ supose i have a command or function "modify" that... (7 Replies)
Discussion started by: Xedrox
7 Replies

4. Shell Programming and Scripting

Use sed to append text to filenames if text not already present

I have some html with hrefs that contain local links to pdf filenames. These filenames should have standardised names, i.e. there should be a label prior to the ".pdf" filename suffix. There can be many of these links on a single line of text and some may already have the label. For example ... (13 Replies)
Discussion started by: adb
13 Replies

5. Shell Programming and Scripting

Modify the text file by script

Hi All the Helpers! I have a text file which looks like input.txt.I would request to please suggest me how can I make this file look like output.txt input.txt VOP 111 0 1 2 DEM 111 0 222 333 444 555 879 888 987 888 989 VOP 118 0... (2 Replies)
Discussion started by: Indra2011
2 Replies

6. Shell Programming and Scripting

Modify text file using shell script

Hi, I have a text file which is following format - COL VAL ABC 1 ABC 2 ABC 3 ABC 4 ABC 5 My requirement is to search for a particular value (provided by user) in the file and comment the previous entries including that as well. E.g. If I search for number 3, then the output... (6 Replies)
Discussion started by: bhupinder08
6 Replies

7. UNIX for Dummies Questions & Answers

Modify Text File

Hi, I would like to remove any lines from a text file that begin with #, or that are blank. How can I do that with BASH? Mike (3 Replies)
Discussion started by: msb65
3 Replies

8. Shell Programming and Scripting

how preserve the content of the text box

I have used get method in my form and retrieving the content of text box in $value using: $buffer = $ENV{'QUERY_STRING'}; ($name,$value)=split(/=/,$buffer); Now I want to preserve my text box: I had tried: print "<form action='/cgi-bin/abcd.cgiv' method='get'>"; print "<input... (7 Replies)
Discussion started by: therockravi
7 Replies

9. Shell Programming and Scripting

Modify Specific Line of a Text File

Given a text file, how do you add a line of text after a specific line number? I believe I would want to use "sed" but I am unsure of the syntax. Thank you. Mike (5 Replies)
Discussion started by: msb65
5 Replies

10. Shell Programming and Scripting

Modify a text or xml file

Hi all, I want to write a shell which would allow me to edit a text file or a xml file. Basically i want to add a new node in a existing xml file. The values for this new node are based on user input. Thanks in advance Zing (9 Replies)
Discussion started by: zing
9 Replies
Login or Register to Ask a Question