如何在没有 Applescript 的情况下从命令行关闭特定的 Xcode 项目?

How can I close a specific Xcode project, from the command line, without Applescript?

提问人:meisel 提问时间:3/16/2020 更新时间:7/9/2023 访问量:428

问:

我想从命令行关闭特定的 Xcode 项目而不关闭任何其他项目(所以我不能只使用 )。Applescript 在 Catalina 中存在问题,因为需要额外的权限。有没有其他方法可以做我想做的事?kill

xcode 命令行

评论

0赞 esqew 3/16/2020
您认为任何其他语言在 Catalina 中不会受到相同安全限制的任何特殊原因是什么?为什么不采取与其他具有类似功能的应用程序相同的途径,并指导用户如何授予对脚本/应用程序的访问权限以启用此功能呢?

答:

1赞 matt 3/16/2020 #1

如果要使用终端通过 AppleScript 控制其他应用程序,则必须授予权限。但这并不困难,因为如果您尚未授予所需的权限,系统将提示您提供所需的权限。

例如,我刚才说

 $ osascript -e 'tell app "Finder" to close window 1'

我看到了这个对话框:

enter image description here

我单击了“确定”,窗口按照命令关闭。没关系。所以你会在 Xcode 中看到类似的东西,你会授予权限,就是这样。该权限记录在“自动化”下的“安全和隐私”首选项窗格中。

如果您希望通过系统事件传递,则权限将记录在“辅助功能”下。请注意,这是您可以提前授予的权限。但是您仍然需要浏览对话框,以便您可以授予终端与系统事件通信的权限。

如果在对话框中拒绝访问,并且希望再次询问,请使用 重置数据库。这里的好讨论:https://apple.stackexchange.com/questions/384230/how-do-i-reset-screen-recording-permission-on-macos-catalinatccutil

1赞 Bary Levy 7/9/2023 #2

将请求的项目放在前面并关闭前窗

$ xed .
$ osascript -e 'tell app "XCode" to close window 0'