Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/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
Linux 通过命令行在应用程序模式下关闭google chrome open_Linux_Bash_Google Chrome_Startup - Fatal编程技术网

Linux 通过命令行在应用程序模式下关闭google chrome open

Linux 通过命令行在应用程序模式下关闭google chrome open,linux,bash,google-chrome,startup,Linux,Bash,Google Chrome,Startup,在我的python脚本中,我通过以下命令在应用程序模式下打开chrome: 谷歌浏览器——应用程序= 现在我只想关闭这个正在运行的chrome应用程序(我的意思是,如果有另一个chrome窗口有不同的选项卡,我不想关闭它,只想关闭我运行的这个)。这可能吗?如何实现 我正在使用linux 编辑: 就我所能做到的而言: import subprocess proc = subprocess.Popen(['google-chrome', '--user-data-dir=

在我的python脚本中,我通过以下命令在应用程序模式下打开chrome:

谷歌浏览器——应用程序=

现在我只想关闭这个正在运行的chrome应用程序(我的意思是,如果有另一个chrome窗口有不同的选项卡,我不想关闭它,只想关闭我运行的这个)。这可能吗?如何实现

我正在使用linux

编辑: 就我所能做到的而言:

import subprocess

proc = subprocess.Popen(['google-chrome',  
           '--user-data-dir=/home/chrome-user', 'http://google.pl'])

# do something

proc.terminate()
当我从命令行调用这个python脚本时,一切都正常。当我作为linux服务(在/etc/init下)运行它时,我的问题就开始了。我登录了,一切正常,除了谷歌浏览器似乎无法创建窗口或其他什么?我的意思是没有错误,但谷歌浏览器窗口根本不显示

编辑2: 这肯定是创业的问题。当我在启动时运行此命令时:

配对终端-e“蟒蛇3 /路径/to/script/script.py“


除了显示终端窗口外,一切正常。因此,这解决了我的问题,但如果有人对我能做什么有任何建议,我会非常感激。

据我所知,chrome为每个选项卡创建了一个新的进程,因此终止该进程是可行的。您可以通过PID终止进程,并且在启动进程之后可以像这样检索PID:(在bash中)echo$

据我所知,chrome为每个选项卡创建了一个新的进程,因此终止该进程是可行的。您可以通过PID终止进程,并且在启动进程之后可以像这样检索PID:(在bash中)echo$

好吧,过了很长一段时间,我终于有了答案。在linux mint中,您需要将以下内容添加到启动程序:

mate终端-e“python3/path/to/script/script.py”

如果您想以root用户身份运行脚本,这是一个解决方案(非常难看,但很有效):

mate终端-e“bash-c”echo pass | sudo-S python3/path/to/script/script.py;$SHELL”


好吧,过了很长一段时间,我终于有了答案。在linux mint中,您需要将以下内容添加到启动程序:

mate终端-e“python3/path/to/script/script.py”

如果您想以root用户身份运行脚本,这是一个解决方案(非常难看,但很有效):

mate终端-e“bash-c”echo pass | sudo-S python3/path/to/script/script.py;$SHELL”


不幸的是,键入echo$!在控制台中并没有输出。当我在启动top之后运行它时,我看到:25888[1]+Stopped top您是如何在python中启动chrome的?它可能已经返回pid,或者甚至是作为子进程启动的。如果我设法将其作为另一个用户的子进程调用,那么我就可以调用subprocess.terminate()。但谢谢你的回复。但不幸的是,现在我有另一个问题。不幸的是,当键入echo$时!在控制台中并没有输出。当我在启动top之后运行它时,我看到:25888[1]+Stopped top您是如何在python中启动chrome的?它可能已经返回pid,或者甚至是作为子进程启动的。如果我设法将其作为另一个用户的子进程调用,那么我就可以调用subprocess.terminate()。但是谢谢你的回复。但不幸的是,现在我有另一个问题。