2016-03-04 41 views
5

是否可以从一个覆盖覆盆子pi的python脚本启动node.js应用程序?从python脚本启动节点应用程序

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

我可以用如OS库?

+0

我不知道pi,但看到https://docs.python.org/2/library/subprocess.html#module-subprocess – Selcuk

回答

5

文件的第一行应为:

#!/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 

注:结帐Raspberry Pi Stack Exchange,你可以找到很多的使用完全信息存在。

2

由于塞尔丘克在他的评论中提到的,使用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参数,如果你允许任意用户输入要传递给subprocess.call()这可能是一个问题。

相关问题