解决办法: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