Linux - GeneralThis Linux forum is for general Linux questions and discussion.
If it is Linux Related and doesn't seem to fit in any other forum then this is the place.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I'm running into a problem where I don't see what I'm doing wrong. I have a line in a config file (it will always be line 38, FWIW):
$rcmail_config['default_host'] = '';
That I want to replace with:
$rcmail_config['default_host'] = 'localhost';
No problem. Trusty sed should get the job done, right?
sed -e 's/$rcmail_config[\'default_host\'] = \'\';/$rcmail_config[\'default_host\'] = \'localhost\';/g' main.config
But I think I have my escapes wrong somewhere.
Can someone tell me where I messed up?
Thanks in advance.
Distribution: open SUSE 11.0, Fedora 7 and Mandriva 2007
Posts: 1,662
Rep:
Druuna
Are you able to write those sed commands without looking at a book or some other material?
I know you are clever.
I must look at a book or online material to write sed and awk commands.
perl, where did that come from? You asked for a sed solution
Maybe you just settled for perl. It's strange that the two examples given don't seem to work (you remember what went wrong?). I just tried both of them and here they do what they are supposed to do.
But, you have a working solution, thats all that matters in the end
@Gins: By now I don't need books/the net for this, but that's experience.
EDIT
@jakev383: You do know that the " after sed and before infile are double qoutes, not 2 single quotes? The '' after the / and before the ; are 2 single quotes.
/EDIT
Distribution: open SUSE 11.0, Fedora 7 and Mandriva 2007
Posts: 1,662
Rep:
Druuna
When it comes to sed and awk, there are hundreds or rather thousands of commands. You should be a genius to know everything by heart. I am an idiot.
When it comes to 'grep' commands, there is a limit. I may be wrong.
perl, where did that come from? You asked for a sed solution
Maybe you just settled for perl. It's strange that the two examples given don't seem to work (you remember what went wrong?). I just tried both of them and here they do what they are supposed to do.
But, you have a working solution, thats all that matters in the end
@Gins: By now I don't need books/the net for this, but that's experience.
EDIT
@jakev383: You do know that the " after sed and before infile are double qoutes, not 2 single quotes? The '' after the / and before the ; are 2 single quotes.
/EDIT
Where did perl come from? Once thing I've learned in Linux - it doesn't matter what you do or how you do it, as long as 2+2=4 in the end. If nothing else I think it's safe to say there's at least 3 ways of doing anything in Linux.
That being said, when I was doing a search-n-replace sed popped in my head. I couldn't get it to do what I wanted and after Gins bumped me with those double quotes, well, sed still didn't work but I thought "why not try perl?" since I was using it 5 lines prior in my little script anyway.
And yeah, I don't know why those don't work either. I ran them on a Cent4.4 machine which shouldn't matter but I've seen some weird things on Debian distros where /bin/sh wasn't linked to /bin/bash so scripts did funny things sometimes.
Thanks everyone!
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.