我有一个脚本需要我把变量传递到批处理文件,测试.bat在
脚本
pst = subprocess.Popen(
["test.bat", userIP],
stdout = subprocess.PIPE,
stderr = subprocess.PIPE
)
批处理文件
^{pr2}$它不起作用。如果我用userIP调用脚本,它将返回空白输出。在
但如果我不使用批处理文件和替换
pst = subprocess.Popen(
["test.bat", userIP],
stdout = subprocess.PIPE,
stderr = subprocess.PIPE
)
与
pst = subprocess.Popen(
["D:\pstools\psloggedon.exe", "-l", "-x", userIP],
stdout = subprocess.PIPE,
stderr = subprocess.PIPE
)
那么它就完美地工作了。如果我用userIP调用,它将返回当前用户。在
怎么解决这个问题?在
因为这是一个Windows批处理文件,而不是一个与POSIX.2兼容的shell
应该是
^{pr2}$(顺便说一句,如果是一个与POSIX兼容的shell,那么您需要引用,如
-x "$1"
中所示,以确保参数被正确传递)。在相关问题 更多 >
编程相关推荐