Mac闲置时如何自动启动应用程序?


15

每当计算机空闲(而不是睡眠)时,是否有办法启动应用程序(如传输)?

Answers:


7

这是一项很难完成的壮举,主要是因为没有“空闲”的特定定义。我所看到的唯一真正具有空闲功能的程序是Instant Messaging Clients和最近的Mac App Store版本的Growl。而且,这些时间只是可配置的时间,在没有鼠标/键盘活动发生的设定分钟数后,时间将消失。

几年前,在Macworld论坛上进行了类似的讨论,并且在一篇特定的帖子中,实质上涉及创建和运行AppleScript,以监视您的使用情况并在您进入“空闲”状态时启动应用程序。

property idleCheck : 20 as integer
property idleCheck_usr : 120 as integer
set timer to 0
on idle
    --Check idle time
    set idletime to do shell script "ioreg -c IOHIDSystem | awk '/HIDIdleTime/ {print int($NF/1000000000); exit}'"
    set idletime to idletime as string
    set idletime to idletime as integer

    tell application "System Events"
        if idletime is less than idleCheck then (* 20 is 20 seconds. If a key was tapped within the idleCheck seconds, it quits the app. *)
            tell application "TextEdit" to quit

            return idleCheck -- checks again in ... seconds
        else
            if idletime is greater than idleCheck_usr then (*  If a key was tapped after the idleCheck_usr seconds it opens the app. *)
                tell application "TextEdit" to launch   
            end if

            return idleCheck
        end if
    end tell
end idle

在这种情况下,只有2分钟后才处于空闲状态,但是您可以根据需要轻松地将其更改为更长的时间。您还将需要修改该行以打开“传输”而不是“ TextEdit”。

请注意,您必须打开此AppleScript并使其运行,以使操作(在空闲状态下启动应用程序)发生。



3

如何Sleepwatcher

“ SleepWatcher 2.2(与Mac OS X 10.5到10.7一起运行,包括源代码)是Mac OS X的命令行工具(守护程序),用于监视Mac的睡眠,唤醒和空闲状态。当出现以下情况时,它可以用于执行Unix命令:在给定的时间没有用户交互之后,或者用户在休息后恢复活动时,或者在连接或断开Mac笔记本电源时,Mac或Mac的显示器进入睡眠模式或唤醒。 Mac进入睡眠模式或检索自上次用户活动以来的时间。”

要启动应用程序(使用命令),您必须执行以下操作:

open /Applications/Transmission.app


0

如果启动屏幕保护程序就是idel的意思,则可以查看ScriptSaver,它使自己成为屏幕保护程序,然后在调用它时将AppleScript广告称为屏幕保护程序。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.