problem in using sed command in editing a file


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting problem in using sed command in editing a file
# 1  
Old 07-05-2010
problem in using sed command in editing a file

Hi all,

I have a conf file, i want to update some entries in that conf file. Below is the code for that using a temporary file.

Code:
sed '/workgroup=/ c\workgroup=Workgroup' /usr/local/netx.conf > /usr/local/netx.conf.tmp
mv -f /usr/local/netx.conf.tmp /usr/local/netx.conf

Sample contents of netx.conf :-
Code:
workgroup=Workgroup
Use=hosts
security=user1
....
...

I do not want a .tmp file ,please let me how can i update an entry in a file without using a temp file.
Is it possible using awk ??????
Thanks all !!


Last edited by Scott; 07-05-2010 at 08:55 AM.. Reason: Please use code tags
# 2  
Old 07-05-2010
Code:
sed '/workgroup=/ c\workgroup=Workgroup' * /usr/local/netx.conf/ > /usr/local/netx.conf


Last edited by Scott; 07-05-2010 at 08:56 AM.. Reason: Code tags
# 3  
Old 07-05-2010
if yours is GNU, you will get '-i' option in sed which does what you need.
# 4  
Old 07-05-2010
Check if your sed supports the -i option, the so-called in-place editing.
Code:
sed -ie 's/THIS/THAT/' file

# 5  
Old 07-05-2010
i tried all the given commands.....
Whats happening is EITHER 'the new valus is getting prefixed with the old value'(workgroup=newold) OR 'file contents get duplicated (file contents gets repeated).

Even i tried the below ones ,sill aint able to find a soln :
Code:
sed -i -e 's/workgroup=/workgroup=NEW' filename
perl -pi -e s/"${workgroup=}"/"${workgroup=NEW}"/g


Last edited by Scott; 07-05-2010 at 08:56 AM.. Reason: Code tags
# 6  
Old 07-05-2010
Try
Quote:
Originally Posted by ranj14r
Code:
sed -i -e 's/workgroup=.*/workgroup=NEW' filename

# 7  
Old 07-06-2010
after exec the command:
Code:
sed -i -e 's/workgroup=.*/workgroup=NEW' netx.conf

I get some error as ------:
Code:
sed: -e expression #1, char 28: unterminated `s' command


Last edited by Scott; 07-06-2010 at 07:41 AM.. Reason: Code tags, PLEASE!
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Shell quoting problem while editing a remote file using sed

value of i = solarisbox ssh $i "cat /etc/hosts | sed "s/$i\.local\.//" | sed "s/$i\./$i/" | sed "s/$i/$i.sol.com/" > /usr/users/chidori/edit_hosts"While running the above one liner its i am not able to make the changes and write it to the file /usr/users/chidori/edit_hosts . I know there is a... (2 Replies)
Discussion started by: chidori
2 Replies

2. Shell Programming and Scripting

editing file with awk cut and sed

HI All, I am new to unix. I have a file would like to do some editing by using awk, cut and sed. Could anyone help? This file contain 100 lines. There are one line for example: 2,"102343454",5060,"579668","579668","579668","SIP",,,"825922","035885221283026",1,268,"00:59:00.782 APR 17... (2 Replies)
Discussion started by: mimilaw
2 Replies

3. UNIX for Dummies Questions & Answers

stuck in editing file with cat command

Hi, While editing a small text file with cat command i pressed ctrl-d to send eof, instead of coming out of cat command it echoed ^D to the screen. Same thing is happening to ctrl-c. After googling i found this is because of trap. The problem is i m stuck in editing mode and cannot get the... (3 Replies)
Discussion started by: TITANIUM
3 Replies

4. Shell Programming and Scripting

Problem with searching and then editing a file through shell.

Hi, I have searched through this forum as there are many similar entries but could'nt get one of them to work, either that or they were just different to what I needed. Basically I have a file, recordsDatabase. In this file are a few different fields. There is a unique identifier eg 001... (5 Replies)
Discussion started by: U_C_Dispatj
5 Replies

5. Shell Programming and Scripting

Single line file editing command?

Hello everyone. I have been reading a lot about the various different text editors at my disposal through Unix, but I just can't seem to close the deal for what I am trying to do. Is there a way to issue a single line command to edit a file where pattern=x, and do it non-destructively AND in-place?... (1 Reply)
Discussion started by: gator76
1 Replies

6. Shell Programming and Scripting

SED - editing file names (End of line problem?)

For lists in sed, to say what to replace, is this correct: I am hoping that this would recognise that either a "." is present, or that the substitution happens at the end of the line. For files with extensions , my script works perfectly. My problem is, files without extentions, i.e. . ... (1 Reply)
Discussion started by: busillis
1 Replies

7. Shell Programming and Scripting

Editing File using awk/sed

Hello Awk Gurus, Can anyone of you help me with the below problem. I have got a file having data in below format pmFaultyTransportBlocks ----------------------- 9842993 pmFrmNoOfDiscRachFrames ----------------------- NULL pmNoRecRandomAccSuccess -----------------------... (4 Replies)
Discussion started by: Mohammed
4 Replies

8. UNIX for Dummies Questions & Answers

where is the problem in my sed command....

for example i have the file that contain several line..and i want to swap the first word and the second word than i store it into new file.. on the command i wrote: sed -e "s/^\(*\)\(*\)/\2\1/g" file > swapfile i think its already correct... but i got the error sed: -e expression... (5 Replies)
Discussion started by: P_W
5 Replies

9. UNIX for Dummies Questions & Answers

problem editing big file in vi

I have a big file, which vi opens it with message not sufficient space with file system. I am not adding any data in the file but changing some values within. To make these changes effective, it asks for forced write (w!), even after doing this, I see this particular record, change is not... (4 Replies)
Discussion started by: videsh77
4 Replies

10. Shell Programming and Scripting

Sed command problem

Hi! here is my problem : $ more file yopyop:FIToB8df02f:10200:351:yoyo:/home/yopyop:/usr/bin/ksh $grep yopyop file | sed s/FIToB8df02f/passe/ yopyop:passe:10200:351:yoyo:/home/yopyop:/usr/bin/ksh $more file yopyop:FIToB8df02f:10200:351:yoyo:/home/yopyop:/usr/bin/ksh ...when i... (1 Reply)
Discussion started by: tomapam
1 Replies
Login or Register to Ask a Question