如何在Python中执行此unix进程?连接参数时的问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在Python中执行此unix进程?连接参数时的问题相关的知识,希望对你有一定的参考价值。

我有一个文件需要传递一些参数来开始执行一个进程。该文件是../main/serv。如果我在unix shell终端中执行此命令,一切顺利。

../main/serv -o phy=dhc=file:serv:1 -o in=dhc,0 -o out=file:phy_out:1 -o eui48=01:00:00:00:00:00

我从我的python脚本调用此函数来启动进程但不起作用。

    subprocess.call(["../main/serv", "phy=", "dhc=file:serv:1", "in=", "dhc,0", "out=" , "file:phy_out:1", "eui48=01:00:00:00:00:00"])

我一直在寻找解决方案但是我找不到它,我认为我没有正确地传递参数,我该怎么办呢?

谢谢!

答案

我认为我没有正确地传递这些论点,我该怎么做呢?

只需传递在shell中执行命令时传递的相同参数,所以改变它

    subprocess.call(["../main/serv", "phy=", "dhc=file:serv:1", "in=", "dhc,0", "out=" , "file:phy_out:1", "eui48=01:00:00:00:00:00"])

    subprocess.call(["../main/serv", "-o", "phy=dhc=file:serv:1", "-o", "in=dhc,0", "-o", "out=file:phy_out:1", "-o", "eui48=01:00:00:00:00:00"])

以上是关于如何在Python中执行此unix进程?连接参数时的问题的主要内容,如果未能解决你的问题,请参考以下文章

Unix环境高级编程进程环境

如何将正在运行的进程移至后台 (UNIX)

在父进程恢复执行之前等待所有子进程 UNIX

Python 3学习 ——网络编程

Unix进程之间的连接,如何获取给定用户名的全名和根目录

Java如何得到当前进程ID号