osascript和sudo密码输入

时间:2015-02-26 20:42:10

标签: macos bash osascript

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

2 个答案:

答案 0 :(得分:3)

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

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

这将直接从Apple的基础架构中提示一个对话框。当您被问到用户名时,您会看到同一个用户名&amp;密码。

您可以在终端中运行此功能,也可以使用第三方包装,例如Platypus

答案 1 :(得分:0)

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

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

sudo security authorizationdb write system.preferences.accessibility allow

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