首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Mac终端上查找"reminder.app“的路径(非英语本地化)

在Mac终端上查找"reminder.app“的路径(非英语本地化)
EN

Stack Overflow用户
提问于 2021-03-13 02:07:50
回答 2查看 83关注 0票数 0

我在Big Sur 11.2.2上使用Macbook Air,语言设置为日语。

我试图在Python3.8.5上使用subprocess.Popen( )启动"reminder.app“。交互式外壳。但是,即使我使用日语应用程序名称(以及以日语应用程序名称显示的Calculator.app、Dictionary.app和许多其他应用程序名称),也无法启动Reminders.app。然而,我能够启动我安装的应用程序。

代码语言:javascript
复制
>>> import subprocess
>>> subprocess.Popen(['open', '/Applications/Reminders.app/'])
<subprocess.Popen object at 0x7ffa8e233e80>
The file /Applications/Reminders.app does not exist.

>>> subprocess.Popen(['open', '/Applications/リマインダー.app/']) # Japanese name of app
<subprocess.Popen object at 0x7ffa8e233d60>
The file /Applications/リマインダー.app does not exist.

subpsubprocess.Popen(['open', '/Applications/Safari.app/'])
<subprocess.Popen object at 0x7ffa8e233bb0>
# success!

我已经使用Finder进行了检查,我正在寻找的所有应用程序都显示在GUI界面中,尽管给出了日语名称。然而,这些应用程序根本无法在终端命令行上找到,也无法操作,即使使用ls -a也是如此。

我如何找到指向提醒应用程序的路径,以便在subprocess.Popen()中使用它?

因为我使用的是非英语系统语言,所以不能这样做吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-03-13 12:38:52

如果你想启动它,而不是仅仅找到它,你可以尝试这个命令行:

代码语言:javascript
复制
osascript -e 'tell application "Reminders" to activate'

我不知道你能不能用日本名字代替,但值得一试。所以在Python中:

代码语言:javascript
复制
import os
os.system('osascript -e \'tell application \"Reminders\" to activate\'')

代码语言:javascript
复制
import subprocess
subprocess.Popen(['/usr/bin/osascript', '-e', 'tell application \"Reminders\" to activate'])

osascript命令基本上是运行单引号中的小AppleScript。我没有尝试过做更复杂的事情,但我假设,作为一个苹果程序,它支持所有种类的AppleEvents,所以你可能可以做一些很酷的事情,比如使用Python代码中的AppleScript来实际安排提醒。

票数 0
EN

Stack Overflow用户

发布于 2021-03-13 03:05:18

使用以下命令:

代码语言:javascript
复制
find / -xdev -name Reminders.app 2> /dev/null

你可以找到:/System/Applications/RMinders.app

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66605034

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档