如果参数和参数之间没有空格,则python认为是两个不同的参数。
这就是为什么python代码中的打印数据输出仅为1。
检查以下输出。
[root@dsp-centos ~]# python dsp.py Dinesh PundkarIn python preDinesh[root@dsp-centos ~]# python dsp.py "Dinesh Pundkar"In python preDinesh Pundkar[root@dsp-centos ~]#
因此,在您的Shell脚本中,将$ var1放在引号中。
Shell脚本( a.sh )的内容:
var1="Dinesh Pundkar"python dsp.py "$var1"
python代码的内容( dsp.py ):
import sysdata = sys.argv[1]print "In python pre"print data
输出:
[root@dsp-centos ~]# sh a.shIn python preDinesh Pundkar



