解決辦法:web
echo $i 要加引號: echo "$i"
我在shell中使用變量來保存一個sql語句,代碼以下:sql
sql="select * from mytable" echo "execute sql =" ${sql}
得出結果以下:execute sql = select db2.sh db2.sh.20140615103542.log db2.sh.20140615103553.log db2.sh.20140615103608.log from mytable。很明顯,shell把*解析成了當前目錄文件的列表shell
我又換成:spa
sql="select \* from mytable" echo "execute sql =" ${sql}
得出結果以下:execute sql = select \* from mytable ,沒有轉義成功code
再換成這樣:orm
sql="select * from mytable" echo "execute sql =""${sql}"
就成功了,得出結果:execute sql = select * from mytableit