从python脚本启动节点应用程序

是否有可能在一个覆盆子pi的Python脚本内启动一个node.js应用程序?

在命令行我运行sudo node myscript.js

我可以使用类似os的库吗?

第一行文件是:

 #!/usr/bin/python 

你可以用subprocess.call调用命令:

 from subprocess import call # Note that you have to specify path to script call(["node", "path_to_script.js"]) 

那么你必须为文件设置+x权限才能执行:

 chmod +x filename.py 

知道你准备好去了:

 ./filename.py 

注意:结帐树莓派堆栈交换 ,你可以find很多使用完整的信息那里。

正如Selcuk在他的评论中提到的那样,使用subprocess模块:

 #! /usr/bin/env python import subprocess subprocess.call('sudo node myscript.js') 

尝试使用sudo运行命令时很可能会遇到FileNotFoundError 。 如果你这样做,你可以尝试:

 #! /usr/bin/env python import subprocess subprocess.call('sudo node myscript.js', shell=True) 

根据Python文档,使用shell=True参数非常小心,因为如果允许任何用户input传递给subprocess.call() ,这可能是一个问题。