uykudan osx uyandırmak için crontab


18

Sabah erkenden (uyumadan sonra) belli bir programı başlatacak ve sabahın ilerleyen saatlerinde (uyanmadan önce) tekrar kapatacak bir crontab'ım var. Ama benim iMac uykuda iken crontab betiğini yürütmez.

Makineyi uyandırmak ve belirli bir zamanda tekrar uyutmak için bazı tercihler olduğunu görüyorum, ancak crontab'ı kullanarak bunu yapmanın bir yolu var mı?

Yanıtlar:


28

cronbilgisayar uyku modundayken çalışmaz, bu nedenle bilgisayarı uyandırmak için bir crontab girişine sahip olmanız mümkün değildir. Bu, bilgisayarı Tercihler >> Enerji Tasarrufu >> Programındaki cron görevinizden sadece bir veya iki dakika önce uyanacak şekilde zamanlayabileceğinizi söyledi.

Ayrıca, Tiger'dan bu yana Apple'ın planlanan işleri çoğu ve işlemden cronhoşlanan komut dosyalarından taşıdığını init.rcbelirtmek gerekir launchd. Daha ayrıntılı (ama hantal, bence) kontrol araçları sağlar (birkaç plist dosyası aracılığıyla). Ayrıca, bilgisayar uyandığında uyuduğu için kaçırılan görevleri otomatik olarak çalıştıracaktır. Apple'ın Zamanlanmış İşleri Zamanlama sayfasına bir göz atın .


Bağlantı koptu.
22'de geri çekilebilir

1
Harika cevap, ama dizüstü bilgisayar kapalıyken uyandırabilir misiniz?
Kullanıcı

4

Uykudan uyanmayı planlamanın başka bir yolu da pmset kullanmaktır:

sudo pmset repeat wakeorpoweron MTWRFSU 03:45:00

launchd bir bilgisayarı uyku modundan uyandıramaz, ancak uyandıktan sonra uyku sırasında planlanan işleri çalıştırır. Diğerleri bunun nasıl yapılacağını ararsa, bu plist'i şu şekilde kaydedebilirsiniz ~/Library/LaunchAgents/some.label.plist:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>Label</key>
  <string>some.label</string>
  <key>ProgramArguments</key>
  <array>
    <string>say</string>
    <string>a</string>
  </array>
  <key>StartCalendarInterval</key>
  <dict>
    <key>Hour</key>
    <integer>23</integer>
    <key>Minute</key>
    <integer>59</integer>
  </dict>
</dict>
</plist>

Sonra koş launchctl load ~/Library/LaunchAgents/some.label.plist.


3

Macintosh'unuzu Enerji Tasarrufu tercih panelinde uyanacak şekilde zamanlayabilirsiniz. Zamanlama düğmesine bakın.


2

Anacron'a bakmak isteyebilirsiniz

Anacron, makine (örneğin bir dizüstü bilgisayar) zamanının çoğunu uykuya da olsa veya kapalı olsa bile Mac'inizdeki periyodik günlük, haftalık ve aylık görevleri gerçekleştirir. Anacron, bilgisayar yeniden başlatıldığında ve her altmış dakikada bir sessizce, çeşitli periyodik komut dosyalarının gecikmiş olup olmadığını kontrol eder ve gerekirse bunları çalıştırır. Anacron'un bu soruna yönelik diğer birçok çözüme göre avantajı, düzgün bir Unix arka plan işlemi olarak çalışması, kullanıcı müdahalesi gerektirmemesi ve düzenli periyodik komut dosyalarını kullanmasıdır.

Hile yapabilecek bir başka uygulama da Uyanış


1

OSX uyku modundayken cron çalışmaz.

Eğer cronwake (site inanıyorum Japonca olarak google translate üzerinden çalıştırmak gerekir) ve anacron bakmak isteyebilirsiniz , ya da sadece Energy Saverkomut dosyasını çalıştırmak için bir uyandırma zamanı planlamak için uygulamayı kullanın, sonra tekrar uykuya koymak.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.