【问题标题】:osascript and sudo password entryosascript 和 sudo 密码输入
【发布时间】:2015-02-26 20:42:09
【问题描述】:

我在 MAC 系统上的对话框的 BASH 脚本中使用 osascript。我遇到的问题是我需要使用的几个命令需要特权才能正常运行。如果我在 BASH 脚本中使用 sudo,密码提示将显示在终端窗口中。有什么方法可以将 sudo 密码提示挂接到 osascript 对话框中吗?或者有什么不同的方法可以处理在 osascript 对话框中询问密码并将其传递给其他程序来处理它?

【问题讨论】:

标签: macos bash osascript


【解决方案1】:

对我有用的是创建 BASH 脚本,然后使用 osascript 调用它。

$ osascript -e 'do shell script "/Path/yourbashscript.sh" with administrator privileges'

这将直接从 Apple 的基础架构提示一个对话框。当您被要求输入用户名和密码时,您会看到相同的内容。

您可以在终端中运行它或使用第三方包装器,例如 Platypus

【讨论】:

    【解决方案2】:

    您可以通过修改Mac的授权权限来隐藏密码界面。

    使用内置的security命令行工具或authbuddy更改system.preferences.accessibility权限为允许:

    sudo security authorizationdb write system.preferences.accessibility allow
    

    打开system.preferences.accessibility 权限将允许任何用户在没有密码提示的情况下更改辅助功能设置。

    【讨论】:

    • 不幸的是,这个脚本将提供给客户,所以修改他们的系统首选项不是我希望他们输入密码的选项。但我想使用 osascript 对话框来做到这一点,而不是在终端窗口中,就像它当前正在工作一样
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-27
    • 2017-11-24
    • 2019-09-04
    • 1970-01-01
    • 2022-06-25
    相关资源
    最近更新 更多