script perl with sed command

Garrett Cooper youshi10 at u.washington.edu
Sat Apr 7 20:34:42 UTC 2007


Olivier Regnier wrote:
> Hello,
>
> I have a problem with my perl script with the command sed. Here is a 
> example of my code:
>
> # Selecting the fast server
> print "Using the server called $server";
> system(`/usr/bin/sed 's|\*default host=\(.*\)|\*default 
> host=${server}|' $standard_supfile > $standard_supfile.copy`);
> system('/bin/mv $standard_supfile.copy $standard_supfile');
>
> But in console i have this message:
> sed: 1: "s|*default host=(.*)|*d ...": unescaped newline inside 
> subsitute pattern
>
> Can you help me please ?
>
> Thank you :)
    You forgot "chomp $server;" All commands with backticks ('`') have 
newlines inserted after them.
    There should only be one reference to "*default host=" though, so 
why are you going through the trouble of using sed?
    This can be done inline with perl as well.
-Garrett


More information about the freebsd-questions mailing list