Alle 60 Sekunden automatisch eine Taste drücken

Ist es über Automator, eine App, Applescript usw. möglich, alle 60 Sekunden automatisch eine Taste (dh "g") zu drücken?

Antworten (2)

Sie können dies in AppleScript tun, wenn Sie den Zugriff für Hilfsgeräte aktiviert haben:

tell application "System Events" to keystroke "," using command down

Dies wird (offensichtlich) aufrufen cmd- ,.

Wenn Sie aus irgendeinem Grund den Zugriff für Hilfsgeräte nicht aktivieren können, dann ist es ziemlich einfach, dies im Code zu tun (indem Sie im CGEventRefWesentlichen eine erstellen und sie dann an das System senden). Wenn Sie dabei Hilfe benötigen, besuchen Sie stackoverflow.com, wo diese Frage einige Male gestellt wurde.

Damit dies alle 60 Sekunden geschieht, könnten Sie es in einen Startagenten verwandeln und launchd dies für Sie tun lassen:

<?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>com.stackexchange.apple.12692</string>
    <key>Program</key>
    <string>/usr/bin/osascript</string>
    <key>ProgramArguments</key>
    <array>
        <string>osascript</string>
        <string>-e</string>
        <string>tell application "System Events" to keystroke "," using command down</string>
    </array>
    <key>ServiceDescription</key>
    <string>Auto Keypress</string>
    <key>StartCalendarInterval</key>
    <dict>
        <key>Second</key>
        <integer>0</integer>
    </dict>
</dict>
</plist>

Werfen Sie das in ~/Library/LaunchAgents und Sie sollten bereit sein (sobald Sie die Plist laden und/oder sich abmelden und wieder anmelden).

@Dave danke für deine Antwort, leider bekomme ich das anscheinend nicht zum Laufen. Ich habe den Zugriff für AD aktiviert und Ihr XML als .plist-Datei in meinem Ordner USER/Library/LaunchAgents gespeichert. Wieder abgemeldet, TextEdit geöffnet und ein paar Minuten laufen lassen. Kein Komma "," Taste wurde gedrückt. Was mache ich falsch?
@Ryan, es ist möglich, dass ich die Plist leicht durcheinander gebracht habe, aber es scheint auf meinem System für mich zu funktionieren. Sie können auch versuchen, launchctl load ~/Library/LaunchAgents/filename.plistes im Terminal explizit zu laden.
@ Dave - das hat den Trick gemacht. Danke schön! Eine letzte Frage: Wie kann ich es von "Command"+"," in einfach "g" ändern? Ich habe versucht, die .plist-Datei zu bearbeiten, aber nichts scheint das Verhalten zu ändern.
@Ryan Wenn Sie die Plist ändern, müssen Sie sie "entladen" und erneut "laden".
@Dave Wie genau mache ich das? Ändern Sie einfach Ihren Terminalbefehl (oben) von "Laden" in "Entladen"?
@ Ryan genau :)
@Dave das funktioniert wirklich gut! Weißt du vielleicht, wie man es auf alle 10 Sekunden beschleunigt (statt 60)?

Verwenden Sie „Watch Me Do“, um „G“ einzugeben, verwenden Sie dann die Pause-Aktion, um 60 Sekunden lang anzuhalten, dann die Loop-Aktion und wählen Sie „Loop Automatically“.