Ok, I have this shell script that pipes some stuff to xargs.  Some of the
stuff has lone single quotes in it and breaks the pipe to xargs because of
an unmatched quote error.  So to fix this, I do something like:

cat filname.txt | perl -pi -e "s/\'/\\\'/g" | xargs ....

How can I modify that perl statement so it will take single quotes, double
quotes, greater/less than signs, question marks, and asterisks, and replace
them with a backslash and then themselves?

* would be \*
? would be \?
" would be \"
and so on.

I don't want to have a bunch of -e statements in my little perl command.

Jay