Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 通过apache+打开X窗口上的终端;德扬戈_Python_Django_Gnome Terminal - Fatal编程技术网

Python 通过apache+打开X窗口上的终端;德扬戈

Python 通过apache+打开X窗口上的终端;德扬戈,python,django,gnome-terminal,Python,Django,Gnome Terminal,我正在使用apache+django(mod_wsgi)来完成一些工作 首先,我编写了一个简单的bash脚本,它将调用X窗口上的终端, 执行一些命令。例: DISPLAY=:1 gnome终端-e'sleep 9999'& 如果我在ssh会话中运行此命令/脚本,即使我注销ssh会话,它也会保持活动状态。 但是,如果我在django python代码中执行此命令。 gnome终端将立即运行并关闭 因为其父级(apache会话?)已退出 我如何通过django+apache运行这样的命令(gnome

我正在使用apache+django(mod_wsgi)来完成一些工作

首先,我编写了一个简单的bash脚本,它将调用X窗口上的终端, 执行一些命令。例:

DISPLAY=:1 gnome终端-e'sleep 9999'&

如果我在ssh会话中运行此命令/脚本,即使我注销ssh会话,它也会保持活动状态。 但是,如果我在django python代码中执行此命令。 gnome终端将立即运行并关闭 因为其父级(apache会话?)已退出

我如何通过django+apache运行这样的命令(gnome terminal-e'cmd')而不杀死它?
非常感谢。

我想第一个问题是“你确定要这样做吗?”

您试图如何启动该流程?如果您正在调用
os.system
它肯定不会存活,但是如果您正在调用
os.fork()
然后调用
os.execv
我认为它会存活。但是,如果这不起作用,我认为您可以遵循标准的守护进程,这应该会起作用

这有点像:

fork()
in child, close open file descriptors
open stderr, stdout, stdin (read from dev/null, write to dev/null perhaps) 
setsid()
chdir('/')
fork()
in child, exec the terminal.
请参阅此处有关守护进程的讨论: