#!/usr/bin/python
import os
import subprocess
import sys
import argparse
user = sys.argv[1]
pwd = sys.argv[2]
port = sys.argv[3]
server = sys.argv[4]
serverport = sys.argv[5]
Sslport = sys.argv[6]
Cert = sys.argv[7]
Certpass = sys.argv[8]
Certalias = sys.argv[9]
p = subprocess.Popen(
"wlst.sh abc.py {0} {1} {2} {3} {4} {5} {6} {7} {8}".format(
user, pwd, port, server, serverport,
Sslport, Cert, Certpass, Certalias),
shell=True, stdout=subprocess.PIPE)
output, err = p.communicate()
当我执行上面的脚本时,它失败并出现以下错误
/bin/sh: M: command not found
当我在Unix shell中手动处理它时运行正常。
我也手动传递参数,然后用Popen处理,然后也成功运行。
当我用格式传递参数时,它才会失败。
非常感谢帮助。