wuc đã viết:
Bạn có thể dùng
pmset schedule wake "01/01/2012 20:00:00"
để đánh thức màn hình ngủ trên máy Mac "thức" khác. Thay thế phần ngày / giờ bằng thời gian hiện tại của khóa học.
Tuy nhiên, điều đó không hiệu quả với tôi trên iMac vào khoảng năm 2008 chạy 10.9.1 hoặc MacBook Air 2010 cuối chạy 10.9.2. Tôi không chắc điều này có liên quan gì đến việc quản lý năng lượng của Mavericks hay phần cứng hay không.
Tôi đã có thể làm cho nó hoạt động bằng cách đặt thời gian đánh thức là 15 giây trong tương lai. Thỉnh thoảng tôi có thể làm cho nó hoạt động với cài đặt thấp đến 12 hoặc 13, nhưng không đáng tin cậy. Nhưng có thể có những yếu tố khác mà tôi không nhận ra lúc đó, nhưng 15 đã hoạt động, vì vậy tôi đã sử dụng 15 yếu tố.
Nhưng làm thế nào để bạn tính 15 giây vào tương lai theo chương trình?
Tôi đã sử dụng gdate
từ gói GNU Coreutils ( date
trong OS X có thể thực hiện được điều này, nhưng nếu có thể, tôi không biết làm thế nào và tôi đã gdate
cài đặt):
[để sử dụng date
thay vì gdate
sử dụng bí danh set_wake_time = 'date "-v + $ {OFFSET} S" "+% D% T"']
Đây là kịch bản tôi đã sử dụng:
#!/bin/zsh -f
# how many seconds into the future we want to wake the display
# 15 seems to work reliably. YMMV.
OFFSET=15
# to calculate the time, we need `gdate`
alias set_wake_time='/usr/local/bin/gdate --date "+${OFFSET} sec" "+%m/%d/%g %H:%M:%S"'
# this is where we set the wake command
# if it doesn't succeed the script will exit immediately
/usr/bin/sudo /usr/bin/pmset schedule wake "`set_wake_time`" || exit 1
# if you were not testing this, you'd probably want to end at the
# next line. Just remove the leading '#'
#exit 0
#######################################################
### Everything below this line is only needed during testing ###
# this tells the display to sleep
# because we can test waking the screen up unless it's asleep
pmset displaysleepnow
# for testing purposes: now the script will pause for $OFFSET seconds
sleep $OFFSET
# For testing purposes:
# after $OFFSET seconds, this sound will play 3 times.
# by that time, the display should be awake
# I did this to help me know when I had set OFFSET too low
afplay /System/Library/Sounds/Glass.aiff
afplay /System/Library/Sounds/Glass.aiff
afplay /System/Library/Sounds/Glass.aiff
# script is done
exit 0
Mọi thứ sau '############################################### ######### 'có thể bị xóa sau khi bạn kiểm tra xong.