Tôi đang chạy MacBook với macOS Sierra phiên bản 10.12.5. Tôi muốn biết cài đặt dòng lệnh để thay đổi thành UNCHECK , Vô hiệu hóa Tự động đăng nhập Đăng nhập dưới quyền Bảo mật & Quyền riêng tư. Tôi có thể làm điều này bằng cách sử dụng UI. Tuy nhiên vì tôi phải làm lại điều này nhiều lần, tôi đang cố gắng thực hiện điều này bằng cách sử dụng một tập lệnh.
Chỉnh sửa: Đây là một MacBook thuộc sở hữu của công ty. Nếu tôi muốn làm điều này, tôi phải làm điều đó mỗi khi tôi khởi động lại vì cài đặt này được đặt lại khi khởi động lại. Đây cũng có thể là lý do tại sao nỗ lực của tôi được đề cập dưới đây không hoạt động. Tuy nhiên, tôi có thể thực hiện việc này một cách thủ công, vì vậy các cài đặt không quá hạn chế, vì vậy tôi đoán tôi có thể thực hiện việc này trên dòng lệnh.
Tôi đã thử quy trình được đề cập trong Chỉnh sửa tùy chọn hệ thống thông qua Terminal - nhưng sự khác biệt duy nhất tôi nhận được là ở com.apple.loginwindow.plist
chỗ nó khác ở chỗ nào LoginwindowText
. Tôi không nghĩ rằng đây là cài đặt.
Ai đó có thể cho tôi biết đó là cài đặt dòng lệnh để bỏ chọn hộp này không?
Chỉnh sửa: Đáp lại đề xuất của Mark, tôi đã thử như sau:
try
set thePW to "mypassword"
tell application "System Events"
tell application "System Preferences"
activate
end tell
tell process "System Preferences"
activate
delay 1
click menu item "Security & Privacy" of menu "View" of menu bar 1
delay 3
if title of button 1 of window 1 is "Click the lock to make changes." then
click button 1 of window 1
delay 2
keystroke thePW
keystroke return
end if
get properties
--set properties to {automatic login:true}
end tell
end tell
on error errMsg
display dialog errMsg
end try
Mã này bắt đầu Bảo mật & Quyền riêng tư và đặt mật khẩu của tôi để đăng nhập. Thật không may, get properties
nó không cho tôi thấy bất cứ điều gì về automatic login
. Tôi nhận được kết quả sau:
{có thuật ngữ kịch bản: true, định danh gói: "com.apple.systempreferences", tệp: bí danh "Macintosh HD: Ứng dụng: System Preferences.app:" của ứng dụng "Sự kiện hệ thống", loại trình tạo: "spf", subrole: thiếu giá trị, toàn bộ nội dung: {}, đã chọn: thiếu giá trị, tệp ứng dụng: bí danh "Macintosh HD: Ứng dụng: System Preferences.app:" của ứng dụng "Sự kiện hệ thống", định hướng: giá trị thiếu, vai trò: "AXApplication", chấp nhận mức cao sự kiện: true, loại tệp: "ỨNG DỤNG", giá trị: thiếu giá trị, vị trí: thiếu giá trị, id: 28015286, tên hiển thị: "Tùy chọn hệ thống", tên: "Tùy chọn hệ thống", lớp: quy trình ứng dụng, chỉ nền: sai, phía trước: true, kích thước: thiếu giá trị, hiển thị: true, Classic: false, không gian phân vùng được sử dụng: 0,mô tả vai trò: "ứng dụng", giá trị tối đa: giá trị thiếu, kiến trúc: "x86_64", tên viết tắt: "Tùy chọn hệ thống", tập trung: giá trị thiếu, giá trị tối thiểu: giá trị thiếu, trợ giúp: thiếu giá trị, tiêu đề: "Tùy chọn hệ thống", chấp nhận các sự kiện từ xa: false, tổng kích thước phân vùng: 0, mô tả: "ứng dụng", mô tả khả năng truy cập: giá trị thiếu, bật: giá trị thiếu, id unix: 57066}unix id: 57066}unix id: 57066}
Trong đoạn mã đã đề cập ở trên tôi đã nhận xét ra set properties to {automatic login:true}
dòng. Nếu tôi kích hoạt nó, tôi nhận được lỗi:
lỗi "Sự kiện hệ thống có lỗi: Không thể biến {đăng nhập tự động: true} thành loại thuộc tính của quy trình." số -1700 từ {đăng nhập tự động: đúng}
Tôi sẽ biết ơn bất kỳ sự giúp đỡ.
get properties
không chỉ cho tôi bất cứ điều gì về automatic login
.", Và không có lý do tại sao bạn nên có được tính chất của automatic login
bởi vì bạn không yêu cầu security preferences
cho sản phẩm các thuộc tính, bạn đang hỏi "Tùy chọn hệ thống" cho các thuộc tính của nó! Hãy thử sử dụng.: tell application "System Events" to get properties of security preferences
BTW Bạn không cần điều đó trong mã để đặt các thuộc tính, chỉ để kiểm tra các thuộc tính là gì.