find and replace query


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting find and replace query
# 8  
Old 05-27-2009
Quote:
Originally Posted by devtakh
Code:
sed '/Server=127.0.0.1/{s//Server=0.0.0.0/g}
/ServerPort=0/{s//ServerPort=1/g}
/Enable Server=1/{s//Enable Server=0/g}
' /opt/server.conf > /opt/new_server.conf

-Devaraj Takhellambam
Hi Devaraj Takhellambam,

Your solution works fine... but I am facing new problem now... Actually I didn’t mentioned my complete input file which is
Code:
### Welcome to server ###
### Server address and port ###
 
Server=127.0.0.1 
### Replace Server=0.0.0.0 ###
 
ServerPort=0
### Replace ServerPort=1 ####
### Enable Server ##
 
Enable Server=1
 
### Replace Enable Server=0 ###
 
Enable Agent=1
Enable ip=1
 
### Now I dont need to change above two options ###
### END OF FILE ##

So what i have implemented look like
Code:
FILE="/opt/server.conf"
NEW_FILE="/opt/new_server.conf"
    exec 0<$FILE
    while read line
do
     #echo ${line}
     if [ -n "`echo ${line} | grep 'Server=127.0.0.1'`" ]  #grep command searches for right string
     then
              echo ${line} | sed 's|Server=127.0.0.1|Server=0.0.0.0|g' >>$NEW_FILE
     elif [ -n "`echo ${line} | grep 'ServerPort=0'`" ]
     then
             echo ${line} | sed 's|ServerPort=0|ServerPort=1|g' >>$NEW_FILE
     elif [ -n "`echo ${line} | grep 'Enable Server=1'`" ]
     then
             echo ${line} | sed 's|Enable Server=1|Enable Server=0|g' >>$NEW_FILE
     else
             echo ${line} >>$NEW_FILE
     fi
     done < $FILE

Output file looks like
Code:
Server=0.0.0.0
ServerPort=1
Enable Server=0

So when i execute my code, output file only contains the strings which i have changed, there are certain strings which i want to copy as it .

Sorry i am bothering you lot...

thanks Smilie
# 9  
Old 05-27-2009
follow this code:

find . -type f | xargs sed -i "s/Server=127.0.0.1/Server=0.0.0.0/g"
# 10  
Old 05-27-2009
Quote:
Originally Posted by mnmonu
follow this code:

find . -type f | xargs sed -i "s/Server=127.0.0.1/Server=0.0.0.0/g"
hi mnmonu,

I am still new to shell script, can you explain me as where to and how to use find . -type f | xargs sed -i "s/Server=127.0.0.1/Server=0.0.0.0/g" in my mentioned code..

thanks

-----Post Update-----

hi devtakh

Sorry mate for bothering you with so many question.. There was problem in my script and i found it.. Now output is coming very correctly...

Thanks man.. Really appreciate your response..

Thanks to all who gave their valuable suggestions.

Last edited by lightdensity; 05-27-2009 at 07:57 AM..
# 11  
Old 05-27-2009
hey,

even i was facing similar query.. your posts helped me
# 12  
Old 05-27-2009
Quote:
Originally Posted by devtakh
Code:
sed '/Server=127.0.0.1/{s//Server=0.0.0.0/g}
/ServerPort=0/{s//ServerPort=1/g}
/Enable Server=1/{s//Enable Server=0/g}
' /opt/server.conf > /opt/new_server.conf

-Devaraj Takhellambam
hi,

As soon as i think, i am getting use to shell script .. some or the other errors occurs.
My previous code is working fine execpt for
Code:
 elif [ -n "`echo ${line} | grep 'DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl'`" ]
 then
       echo ${line} | sed 's|DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl|DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl|g' >>$FILE1

this is throwing error
Code:
./sendmail.sh: line 19: unexpected EOF while looking for matching ``'
./sendmail.sh: line 33: syntax error: unexpected end of file

Pl me help on this..
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Replace query by reading the file

Hi Guys, I am having below file which holds data like this file.txt name,id,flag apple,1,Y apple,2,N mango,1,Y mango,2,Y I need to read the above file and frame a query like this hive -s -e "create apple_view as select 1 from main_table;" hive -s -e "create mango_view as select... (11 Replies)
Discussion started by: rohit_shinez
11 Replies

2. Shell Programming and Scripting

Find file between timestamps Query

On my linux box, I have a file say dump.txt. I then need to move to another seperte folder and need to find only one file with extension *.tar that has the closest timestamp after / next to the timestamp of the dump.txt. (2 Replies)
Discussion started by: mohtashims
2 Replies

3. Shell Programming and Scripting

How to use regexp to find an ipaddress from a query string?

I need help with a regexp to find out the ip address which can possibly be present in a URL. The URLs can be in any of the following form <domain>?a=12345&d=somestring1 <domain>?c=10.10.10.100&d=somestring1 <domain>?a=12345&b=somestring1&c=10.1.2.4d=somestring2... (3 Replies)
Discussion started by: ampak
3 Replies

4. Shell Programming and Scripting

Find query

when i search for a file using find i want to be able to cd to the directory of the file simple find i'm using is find . -name <filename> the output is the full path to the file, i want to use the output to cd into the directory... I need to add this into a script Any ideas pls (2 Replies)
Discussion started by: duckeggs01
2 Replies

5. UNIX for Dummies Questions & Answers

Replace query

I have a file with 3 columns as below column1 column2 column3 1, corporate,unix, 2300 2, business,unix, 23000 I need to replace "," with "|" as delimiter but the problem is the second column already has comma which is also getting replaced. I need... (4 Replies)
Discussion started by: praviper
4 Replies

6. Shell Programming and Scripting

Tables to query to find users for database from shell script

I am coding shell script. I need to connect to different databases like DB2, Oracle and Sybase. I would then need to query tables where it has all the groups, users for that database. I would also need who has what kind of permissions. EG: I know for DB2 some TABAUTH table needs to be... (0 Replies)
Discussion started by: pinnacle
0 Replies

7. Shell Programming and Scripting

to find whether update query is successfull or not using Ksh Script

i have a script that performes an update operation. I just wanted to know whether that update statement is successfull or not. Below the script: #!/bin/ksh . $HOME/conf/systemProperties/EnvSetup.properties sqlplus -silent sie/da@edn.world <<END set pagesize 0 feedback off verify off... (3 Replies)
Discussion started by: ali560045
3 Replies

8. UNIX for Dummies Questions & Answers

find -mtime query

Hello everyone, I have got two queries: 1) I want to do some work on files that were last modified yesterday. Will find ... -mtime -2 be correct or -mtime-1? 2)What about finding files that were modified today? Will it be -mtime -0 or -mtime -1? Thanks. (1 Reply)
Discussion started by: Rajat
1 Replies

9. UNIX for Advanced & Expert Users

query about find and -exec

Hi, i have query about "find" command. Do I need to put the command after -exec in single quotes? Why? For ex. see output of these three find commands. Any explanations? cheers, -Ashish (2 Replies)
Discussion started by: shriashishpatil
2 Replies

10. UNIX for Dummies Questions & Answers

find -perm query

I was going through a find tutorial and just couldn't get it...can someone explain it like he/she would explain a brain damaged dodo? "find allows you to specify a pattern that can be bit-wise ANDed with the permissions of the file. Simply put a minus sign before the octal value. The group write... (1 Reply)
Discussion started by: napolayan
1 Replies
Login or Register to Ask a Question