【问题标题】:Make Sleepwatcher daemon run on display wake - OSX 10.8.3?让 Sleepwatcher 守护进程在显示唤醒时运行 - OSX 10.8.3?
【发布时间】:2013-04-18 20:46:52
【问题描述】:

我已经在我的 10.8.3 计算机上使用 Macports 安装了 Sleepwatcher,遵循从​​这篇帖子 (https://discussions.apple.com/message/17966344#17966344) 中提取的指南:

MacPorts 是安装基于终端的附加组件的最有效和最简单的方法之一。首先,当然要安装 MacPorts,这就像下载一个包并运行它一样简单。

  1. 要通过 MacPorts 安装 Sleepwatcher,只需在命令行中输入:

    sudo 端口安装 sleepwatcher

然后输入:

sudo port load sleepwatcher 

Sleepwatcher 将自动安装和加载。

  1. 您需要将 AppleScript 实际转换为 Shell 脚本(它们不一样)。这样做的方法是将其加载到 您希望放置在 Home 中的 .sleep 或 .wakeup 脚本 文件夹。这样做的方法是执行以下操作: 当您的计算机进入睡眠/唤醒状态时运行的脚本:

a.) 输入新的终端窗口:

cat > $HOME/.wakeup then

#!/bin/sh   

b.) 接下来要了解的是,您可以通过终端运行 Applescripts,通过称为 osascript 的东西, 是终端内给出的命令。如果你的 Applescript 相当 简单(只需弹出磁盘或打开新的 Finder 窗口),我会 继续用 osascript 语言写出来。为了获得更好的想法 这意味着什么,请访问此网站。然而,看起来你已经 将您的 Applescript 保存为文件。下一个解决方案可能有点 简单一点。以下将帮助您运行 Applescript 从您保存的文件中(假设它是 .scpt 或 某物)。输入以上命令后,输入:osascript 后跟一个空格。然后将您的 Applescript 文件拖到终端 窗户。因此,您的命令应该类似于: osascript /path/to/desired/脚本

c.) 按回车键。

d.) 按 ^D (Ctrl-D)

e.) 然后输入 chmod +x $HOME/.wakeup

这对我很有用。

但是,我想要的是在显示唤醒时运行一个简单的 Applescript。但是,现在,守护程序仅在从睡眠中唤醒时运行,而不是从显示睡眠中唤醒。如何让它在显示器睡眠唤醒时运行?我可以在终端中执行此操作,但我一生都无法弄清楚如何使用启动守护程序来执行此操作。

【问题讨论】:

    标签: macos unix terminal macports


    【解决方案1】:

    我自己是这个东西的新手,但是查看 man 文件似乎您可以更新您的 .plist 文件 ~/Library/LaunchAgents/de.bernhard-baehr.sleepwatcher.plist 以使用标志“-W”用于“displaywakeupcommand”而不是“-w”用于“wakeupcommand”(除非您可以同时使用两者?)。

    【讨论】:

    • 我必须将该标志添加到 ~/Library/LaunchAgents/de.bernhard-baehr.sleepwatcher-20compatibility-localuser.plist 并运行 launchctl load -w ~/Library/LaunchAgents/de.bernhard-baehr.sleepwatcher-20compatibility-localuser.plist
    猜你喜欢
    • 2017-01-20
    • 1970-01-01
    • 2014-12-01
    • 2014-09-05
    • 2023-03-02
    • 2017-06-01
    • 1970-01-01
    • 2014-04-12
    • 1970-01-01
    相关资源
    最近更新 更多