wuc menulis:
Anda dapat gunakan
pmset schedule wake "01/01/2012 20:00:00"
untuk mengaktifkan layar tidur pada Mac yang "terjaga". Ganti bagian tanggal / waktu dengan waktu saat ini tentunya.
Namun, itu tidak berfungsi untuk saya pada sekitar 2008 iMac berjalan 10.9.1 atau akhir 2010 MacBook Air menjalankan 10.9.2. Saya tidak yakin apakah ini ada hubungannya dengan manajemen energi Mavericks atau perangkat kerasnya, atau apa.
Saya bisa membuatnya bekerja dengan mengatur waktu bangun menjadi 15 detik di masa depan. Kadang-kadang saya bisa membuatnya bekerja dengan pengaturan serendah 12 atau 13, tetapi tidak andal. Tetapi mungkin ada faktor-faktor lain yang tidak saya sadari pada saat itu, tetapi 15 berhasil, jadi saya menggunakan 15.
Tetapi bagaimana Anda menghitung 15 detik ke masa depan secara terprogram?
Saya menggunakan gdate
dari paket GNU Coreutils ( date
di OS X mungkin bisa melakukan ini, tetapi jika bisa, saya tidak tahu caranya, dan saya sudah gdate
menginstalnya):
[untuk digunakan date
alih-alih gdate
menggunakan alias set_wake_time = 'date "-v + $ {OFFSET} S" "+% D% T"']
Berikut skrip yang saya gunakan:
#!/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
Semuanya setelah '############################################ ######### 'dapat dihapus setelah Anda selesai pengujian.