繁体   English   中英

用AppleScript执行登录命令

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM