• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

Applescript zu einer bestimmter Zeit aussetzen.

stefan19773

Granny Smith
Registriert
23.09.12
Beiträge
17
Hallo,
zum mounten der Laufwerke meiner NAS nutze ich ein
Script. Dies wiederum starte ich mit "launchctl load -w com.laufwerke.blackbox.plist".
Folgende Code nutze ich in der .plist,


Code:
<?xml version="1.0" encoding="UTF-8"\?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.laufwerke.blackbox</string>
<key>ProgramArguments</key>
<array>
<string>/Users/stefan/Library/Services/Laufwerke.app/Contents/MacOS/applet</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>StartInterval</key>
<integer>3000</integer>
</dict>
</plist>


Alles soweit wunderbar, allerdings fährt die NAS zu einer bestimmten Zeit
in den Ruhezustand (22:00-05:00), in dieser Zeit ist das Script wirkungslos.
Mein frage nun, kann ich den Code so ändern das er in der Zeit zwischen 22:00-05:00 Uhr
nicht ausgeführt wird.


Gruß
Stefan
 

sedna

Galloway Pepping
Registriert
22.10.08
Beiträge
1.359
Hallo,

erstmal vorweg: CROSSPOSTING ist blöd und gegen die Forenregeln.
Und bedenke: wenn man an einem Wochenende einen Beitrag in einem Forum verfasst und nicht gleich eine Antwort kommt, so kann man ruhig etwas Geduld mitbringen...

Zur Sache:
Wir kennen nicht den Inhalt deines AppleScript-Programms und wissen nicht, ob es -als Programm gespeichert- zum Mounten notwendig ist, bzw. ob man nicht überhaupt gleich besser ein Shell Script nehmen könnte. Jedenfalls kann man mit /usr/bin/osascript AppleScript Code direkt ausführen, bzw. auch ein als Skript oder Skript-Bundle gespeichertes Skript ausführen lassen.
Es läuft dann im Hintergrund und stört nicht weiter.
Soweit zur Kosmetik...
Nebenbei: der Speicherort im Services Ordner macht mich stutzig....

Ist der Startintervall im Job notwendig?
Ansonsten kannst du mit dem Argument StartCalendarInterval den Job (zusätzlich zu RunAtLoad) zu einer bestimmten Uhrzeit ausführen lassen (05:00)

Die ganz enge Antwort auf deine Frage wäre das Argument KeepAlive mit dem Subkey OtherJobEnabled
(Mit einem weiteren Job könntest du diesen Job natürlich auch direkt laden/stoppen...)

Gruß
 
Zuletzt bearbeitet:
  • Like
Reaktionen: doc_holleday