我正在编写一个在 Linux 服务器上运行的 Python 程序。它根据给定的关键字监视一些日志文件并在 GUI 中显示该日志文件中的行。
我添加了一个新功能,它打开一个带有“less”的终端窗口,显示用户在我的程序中双击的行。
我的问题是:当我在本地(在我的计算机上)运行我的程序时,它运行良好。但是当我通过 SSH 连接到主服务器时从主服务器运行我的程序时,程序运行良好,但是当我双击其中一行时,我看到一个控制台窗口,它可以快速打开和关闭。
这是负责打开“Less Terminal”的代码:
p = subprocess.Popen(args = ["gnome-terminal", "--command = less -p " + "\"" +searchString + "\"" " -j 10 " + "\"" + path + "\""], stdout = subprocess.PIPE)
我怎样才能让它保持打开状态?
PS如果我添加shell = TRUE
,它只会打开一个没有结果的新终端窗口less
。