Internet Tips a cura di Piemonte.net


roberto@ilpiola.it
 

problemi di apici

Questa volta un lettore ha un problema con la shell di unix: il problem è ottenere in output la stringa
where sales_date = "2 may 2000"
con lo script
> ctmds="where sales_date = $1 $2 $3"
> echo $ctmds > outfile
ed i parametri di input 2 may 2000.

Il fatto è che la shell di unix interpreta le virgolette come delimitatori di stringa. se uno vuole incorporare le virgolette in una stringa, le deve far precedere dal carattere di "escape":

ctmds="where sales_date = \"$1 $2 $3\""
Roberto Piola