[CentOS] bash - safely pass untrusted strings?

Benjamin Smith

lists at benjamindsmith.com
Tue Feb 26 15:11:57 UTC 2008


In bash, given a string assignment as follows, how do I "add slashes" 
automagically, so that it can be safely passed to another program? Notice 
that the assignment contains spaces, single-quotes and double-quotes, maybe 
god-only-knows-what-else. It's untrusted data. 

Yet I need to pass it all *safely*. 

The appropriate function in PHP is addslashes(); but what is the bash 
equivalent? EG: 


#! /bin/sh 
A="This isn't a \"parameter\""; 
B=`/path/to/somecommand.sh $A`; 
exit 0;


Thanks, 

-Ben 
--
Only those who reach toward a goal are likely to achieve it. 

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.




More information about the CentOS mailing list