我有一个简短的脚本test_upstart.py,我想使用upstart将其作为服务运行:
import numpy as np
def my_function(a,b):
return np.sqrt(a**2+b**2)
print my_function(1,2)正如在这个问题中提到的,我创建了一个.conf
start on started sshd
stop on runlevel [!2345]
exec /home/ubuntu/test_upstart.py
respawn我触发该服务的方式如下:
sudo start my-service我得到了:
my-service start/running, process 22705但是我看不到输出,而且我每次都需要传递不同的a和b的值。
发布于 2017-04-25 00:12:25
你正在采取的方法是如此笨拙和过于复杂。只需在~/.bashrc中创建一个别名来调用脚本即可。
还需要每次传递不同的a和b值
您需要使用argparse库。我不是argparse方面的专家,但你可以
import argparse
import numpy as np
parser = argparse.ArgumentParser(description='Process some integers.')
parser.add_argument('-a', type=int, nargs=1)
parser.add_argument('-b', type=int, nargs=1)
args = parser.parse_args()
a = args.a[0]
b = args.b[0]
def my_function(a,b):
return np.sqrt(a**2+b**2)
print my_function(a,b)然后尝试使用/home/ubuntu/test_upstart.py -a 2 -b 3或任何其他输入。
https://stackoverflow.com/questions/43592616
复制相似问题