经常发现需要用数组方式传参才能执行某些命令:
原因在于执行多参数的时候,空格被当做分隔符了,因此,你的命令行被当成多个参数了:
解决方法1:
使用${IFS},例如:
echo "a${IFS}a${IFS}a"
解决方法2:
在你要执行的shell指令前添加如下指令:
sh -c $@|sh . echo
本文转自fatshi51CTO博客,原文链接:
http://blog.51cto.com/duallay/2044760 ,如需转载请自行联系原作者