Re: sed problem: variables countaining special symbols
Chris F.A. Johnson wrote:
> On 2006-08-21, Andy B wrote:
> > Hi Guys,
> >
> > Wonder if you can , this problem is getting me down.
> >
> > My script is falling over with a sed problem.
> >
> > NEWSTORE=JvHCdEMzDegPI
> > NPASS=EoWH/Q4hds7nA
> >
> > sed -e '/bill/s/'"${NEWSTORE}"'/'"${NPASS}"'/g' /tmp/temp
> >
> > The above sed command works fine when there are no "special characters"
> > but when they appear as above i get a sed: command garbled: error.
> > Tried a few things with no luck, to escape theses.
>
> That's bacause $NPASS contains a slash. Use a different delimiter
> with sed:
>
> sed -e "/bill/s|${NEWSTORE}|${NPASS}|g" /tmp/temp
>
> --
> Chris F.A. Johnson, author <http://cfaj.freeshell.org>
> Shell Scripting Recipes: A Problem-Solution Approach (2005, Apress)
> ===== My code in this post, if any, assumes the POSIX locale
> ===== and is released under the GNU General Public Licence
Hi Chris,
Thanks for the reply.
I would love to do this only problem is that the 2 variables
$NEWSTORE and $NPASS, will be generated from a file that may have
special characters in it ie !"£$%^&* etc, so what i need sed to do is
read the variable in and ignore any special character that are in that
variable.
Is there a way round this at all?
|