我在我的objective C应用程序中使用@CarlosP的解决方案来作为管理员执行脚本。
链接在上面,但基本上它是这样做的:
NSDictionary *errorInfo = [NSDictionary new];
NSString *script = [NSString stringWithFormat:@"do shell script "%@" with administrator privileges", fullScript];
NSAppleScript *appleScript = [[NSAppleScript new] initWithSource:script];
NSAppleEventDescriptor * eventResult = [appleScript executeAndReturnError:&errorInfo];
它工作得很好,但它不启用/允许Touch ID。我是否有办法在NSAppleScript
的范围内做到这一点?
您可以为sudo启用Touch ID授权。点击这里和这里查看详细信息。
添加auth sufficient pam_tid.so
到/etc/pam.d/sudo
文件。在你的Applescript中删除with administrator privileges
并在shell脚本中使用sudo
。