Insert new line of text into Odbc.ini file


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Insert new line of text into Odbc.ini file
# 1  
Old 04-13-2016
Insert new line of text into Odbc.ini file

I am new to Perl. I wrote a Perl program that inserts text "EnableScrollableCursors=3" after a section of contexts in the odbc.ini file matches a variable in an array list. "EnableScrollableCursors=3" is added to a newline before whitespaces separate each section of contexts in the odbc.ini.

Examples are in the following attachments:
before_odbc.txt
after_odbc.txt

1) before_odbc.txt is how the odbc.ini current looks before changes.

2) after_odbc.txt is how the odbc.ini needs to look after EnableScrollableCursors=3 is added to each section of contexts that matches the list in the array.

Here is my code:
Code:
#!/usr/bin/perl -w

# array search terms


my @match=(AMCSmartk_  AMCSmartfBC_  AMILX_  IHI_ETA_  ASO_   UHACSOI_);

my $filename = '/tmp/before_odbc.txt';
 
my @arr = 'EnableScorllableCursors=3';

open (FILE,  $filename) or die "unable to open $filename: !";
local last = '';
local $^I ='.bak';
While (<FILE>)

#step 1: if one of variable listed in the array matches the variable in the before_odbc.txt file then insert EnableScorllableCursors=3 
#into a newline. EnableScorllableCursors=3 is inserted between the last line of contexts and before the whitespaces in the file. Then move to the next section of contexts and loop through step 1 process again.

foreach my $match  (@match) {
  
  if ($match==/FILE/) {
 
print << @arr "\n";

if $last;

next;

  }
# step 2: if any of variables in the array list does not matches any of #variables in the before_odbc.txt file then move next

else
if ($match=~/FILE/) {
print;

if $last;

next;
    close FILE;
}

print "Finished \n";

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Insert a line of text on nth line of a file

Hi All, I am using UNix Sun OS sun4u sparc SUNW,SPARC-Enterprise My intention is to insert a line of text after 13th line of every file inside a particular directory. While trying to do it for a single file , i am using sed sed '3 i this is the 4th line' filename sed: command garbled: 3... (5 Replies)
Discussion started by: gotamp
5 Replies

2. Shell Programming and Scripting

How to read a text file line by line and insert into a database table?

I have a test file that I want to read and insert only certain lines into the the table based on a filter. 1. Rread the log file 12 Hours back Getdate() -12 Hours 2. Extract the following information on for lines that say "DUMP is complete" A. Date B. Database Name C.... (2 Replies)
Discussion started by: JolietJake
2 Replies

3. UNIX for Dummies Questions & Answers

Insert a line in a text file

I want to insert a line with text after the 9th line of a text file. How would I do this using sed or awk? (2 Replies)
Discussion started by: lost.identity
2 Replies

4. UNIX for Dummies Questions & Answers

Insert a line in a sorted text file(s)

Hello, I am trying to add a line (usually just a word) to some text files in a directory that are already sorted. I just don't want to run the sort command again because it can take a long time when the text or log files are really huge. I have a bashscript that will take in the 1st argument... (7 Replies)
Discussion started by: raptor25
7 Replies

5. Shell Programming and Scripting

Using sed to insert text file at first line

sed '1r file.txt' <source.txt >desti.txt This example will insert 'file.txt' between line 1 and 2 of source.txt. sed '0r file.txt' <source.txt >desti.txt gives an error message. Does anyone know how 'sed' can insert 'file.txt' before the first line of source.txt? (18 Replies)
Discussion started by: psve
18 Replies

6. UNIX for Dummies Questions & Answers

Updating the ODBC.ini file

Hi, I want to access MS SQL Server database through Informatica which is an ETL tool installed on sun solaris Unix operating system. For me to access the MS SQL Server i studied that i need to update the odbc.ini file on Unix box. Could you please let me know how and where i can access this file... (1 Reply)
Discussion started by: Ariean
1 Replies

7. Shell Programming and Scripting

How to insert some constant text at beginig of each line within a text file.

Dear Folks :), I am new to UNIX scripting and I do not know how can I insert some text in the first column of a UNIX text file at command promtp. I can do this in vi editor by using this command :g/^/s//BBB_ e,g I have a file named as Test.dat and it containins below text: michal... (4 Replies)
Discussion started by: Muhammad Afzal
4 Replies

8. Shell Programming and Scripting

Insert a line in a text file

So I need to write lines into line X of file X. I can get the file by doing: cfgnumber=$(cat -n -comm.cfg| grep -i "servicegroup_name 24x7-comunicacions") echo $cfgnumber it outputs the Line where it finds now I need to start writing something right bellow that line. thanks (10 Replies)
Discussion started by: 4scriptmoni
10 Replies

9. Shell Programming and Scripting

how to insert a extra line in a text file

how to insert a extra line in a text file using a sh command iam trying to think of a way to add a extra line but without deleting the whole text do anyone have any ideas (2 Replies)
Discussion started by: bhaviknp
2 Replies

10. Shell Programming and Scripting

Insert text file at a certain line.

I need to insert a file called temp_impact (which has about 15 lines in it) to a file called 11.23cfg starting at line 33. I searched the forums and found the sed '34i\ test' 11.23cfg > newfile That will enter word test at the appropriate line, but i need the entire file dumped there. Any... (4 Replies)
Discussion started by: insania
4 Replies
Login or Register to Ask a Question