Python Ubuntu服务器在特定用户登录时运行脚本

Python Ubuntu服务器在特定用户登录时运行脚本,python,ubuntu,Python,Ubuntu,我有一个python程序,我想在特定用户登录我的Ubuntu服务器时运行。以前,我试图通过命令useradd-m-s/var/jumpbox/jumpbox.py jumpbox来实现这一点。这运行了程序,但它的工作方式与我从/var/jumpbox目录通过/jumpbox.py调用它时的工作方式不同。问题是,这是一个curses菜单,当选择一个选项时,会调用另一个.py文件来运行。使用useradd方法运行jumpbox.py,我的菜单是工作的部分,但当选择一个选项时,它从未调用我的其他.py

我有一个python程序,我想在特定用户登录我的Ubuntu服务器时运行。以前,我试图通过命令
useradd-m-s/var/jumpbox/jumpbox.py jumpbox
来实现这一点。这运行了程序,但它的工作方式与我从
/var/jumpbox
目录通过
/jumpbox.py
调用它时的工作方式不同。问题是,这是一个curses菜单,当选择一个选项时,会调用另一个
.py
文件来运行。使用
useradd
方法运行
jumpbox.py
,我的菜单是工作的部分,但当选择一个选项时,它从未调用我的其他
.py
文件。运行我的
/var/jumpbox/jumpbox.py
文件的最佳方法是什么?当
jumpbox
用户(并且只有该用户)登录到服务器时运行该文件?

这是在
jumpbox.py
中调用的
.py
文件的路径。我只是把它作为文件名引用,没有完整的路径,因为它在同一个目录中
os.system(“python.py”)
使它工作得非常完美


感谢@Hannu

执行第二个脚本时,您的脚本是否没有应用完整路径,或者它包含了一些内容,而您的PYTHONPATH是错误的?如果您使用cd/tmp,它是否有效/var/jumpbox/jumpbox.py?如果不是,则是路径问题。具体如何解决它取决于您的代码,但如果有执行某个内容的调用,只需在其中添加完整路径,它就可以实现这一点。如果是包含问题,您可以使用sys.path.insert(0,“/var/jumpbox”)并查看它是否有帮助。