如何使用 Python 中的子进程优雅地终止 OSX 应用程序
How to gracefully kill OSX application using subprocess in Python
我正在使用子进程编写一个脚本,它将在终端启动一个应用程序,然后退出它。我试图掌握子进程的窍门,但我对终端命令的熟练程度有些不稳定。 (这是轻描淡写的说法。)
假设应用程序是 Mathematica。然后以下终端命令将启动应用程序并退出它:
open -a Mathematica
osascript -e 'quit app "Mathematica"'
我在
找到的关于 osascript 的建议
https://osxdaily.com/2014/09/05/gracefully-quit-application-command-line/
在 python 脚本中,我可以使用
启动应用程序
subprocess.Popen("open -a Mathematica", shell=True)
我试过了
subprocess.Popen("osascript -e 'quit app "Mathematica"'", shell=True)
和其他变体,但未能成功关闭应用程序。
我在空闲时使用 Mac OS 10.15.4 和 Python 3.7。
语法无效。这应该可以解决问题:
subprocess.Popen("osascript -e 'quit app \"Mathematica\"'", shell=True)
我正在使用子进程编写一个脚本,它将在终端启动一个应用程序,然后退出它。我试图掌握子进程的窍门,但我对终端命令的熟练程度有些不稳定。 (这是轻描淡写的说法。)
假设应用程序是 Mathematica。然后以下终端命令将启动应用程序并退出它:
open -a Mathematica
osascript -e 'quit app "Mathematica"'
我在
找到的关于 osascript 的建议https://osxdaily.com/2014/09/05/gracefully-quit-application-command-line/
在 python 脚本中,我可以使用
启动应用程序subprocess.Popen("open -a Mathematica", shell=True)
我试过了
subprocess.Popen("osascript -e 'quit app "Mathematica"'", shell=True)
和其他变体,但未能成功关闭应用程序。
我在空闲时使用 Mac OS 10.15.4 和 Python 3.7。
语法无效。这应该可以解决问题:
subprocess.Popen("osascript -e 'quit app \"Mathematica\"'", shell=True)