sudo应用程序询问用户对话框?

时间:2016-10-29 09:41:32

标签: bash macos applescript admin sudo

我想运行具有管理员权限的OSX应用程序,因此系统会首先询问用户的管理日志/通行证。 是否有bash命令或applescript命令可以让我这样做?

对sudo命令进行排序,但向用户显示图形对话框,类似于Finder在请求在受限文件夹中写入文件的权限时显示的内容。

谢谢!

2 个答案:

答案 0 :(得分:1)

(如果您使用OSX应用程序谈论AppleScript的那个?)

在AppleScript中,您可以显示一个对话框,查找器显示用户登录名和密码,但这不会告诉您密码,它基本上会以sudo的形式运行shell脚本:

do shell script "myadminshellcommand arguments" with administrator privileges

添加"具有管理员权限"您告诉AppleScript使用用户密码

在sudo中运行shell脚本
(Don't add sudo to the command)

答案 1 :(得分:0)

要在任何Mac上运行应用程序,您必须要求输入密码

tell application "System Events"
    set fullname to full name of current user
end tell
display dialog fullname & "  Enter your password " default answer "" with hidden answer
set the adminpass to the text returned of the result
set PW to result
do shell script "echo " & quoted form of (fullname & " " & PW) user name fullname password PW with administrator privileges
tell application "System Events"
    set TheUse to ("/Users/" & name of current user & "/Desktop/")


end tell