[英]Do login command with AppleScript
很简单-有没有办法执行登录命令,然后使用do shell脚本输入登录密码?
例如,我要使用密码name登录到帐户用户 。 如何获取脚本来登录用户 ,然后输入密码名称 (不打开新的终端窗口)? 也许一些bash脚本可执行
do shell script "./mybashscript.sh"
进行登录并输入密码。 我希望它这样做是无形的 。
如果您是指以另一个OSX用户的身份自动登录 ,而不是以另一个用户的身份运行shell命令: 我不知道该怎么做 。
如果您要以另一个用户的身份运行shell命令或shell脚本 ,那是可行的,尽管它需要管理凭据 -不是目标用户的密码,而是具有管理特权的用户的密码。
以下解决方案仅在目标用户的上下文中执行whoami
,这将回显该用户的用户名。
set targetUser to "user1"
do shell script "sudo -H -s -u " & targetUser & " whoami" with administrator privileges
set targetUser to "user1"
set adminUser to "admin"
set adminPasswd to "adminPassword" # !! NOT RECOMMENDED
do shell script "sudo -H -s -u " & targetUser & " whoami" ¬
user name adminUser password adminPasswd with administrator privileges
如果要默认为当前用户(假设它是管理员),请省略user name adminUser
子句。
至于传递给sudo
的选项:
-s
使命令(在这种情况下为whoami
)由(非登录) shell ( 当前用户的shell的实例)执行。 -H
确保$HOME
环境变量设置为目标用户的环境变量,以确保读取目标用户的shell初始化文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.