当我的Mac重新启动时,如何使用Applescript或终端自动向我自己发送电子邮件?


0

我想知道当我的Mac重新启动时,是否有办法通过Command Line或AppleScript服务自动发送电子邮件给自己?谢谢你的建议。

Answers:


1

我知道这样做最简单的方法是使用以下格式在crontab中添加一行:

@reboot /path/to/your/script

该脚本可以使用mail命令调用date命令。


感谢你的帮助,Brian。但我有点困惑。我知道有一个脚本可以自动发送电子邮件: apple.stackexchange.com/questions/125822/... 。我的意思是如果我的Mac意外重启,Mac重启后如何自动向我发送电子邮件?或者,如果有办法在Mac收到消息说他将要重启后自动向我发送电子邮件,他会发出10秒钟发送电子邮件?
Vincent Sun

您的Mac可能会因为很多原因重新启动,并非所有原因都可能会给您10秒的宽限期。答案中的crontab条目可确保在重新启动Mac时运行脚本。脚本本身需要负责实际编写和发送邮件。
nohillside

谢谢,帕特里克斯。我明白你试图告诉我什么。搜索之后,我知道如何在我的crontab中添加一行,但它似乎不起作用。我的crontab是:@reboot /Users/Vincent-St/Desktop/Test.scpt,Test.scpt在Script.Edit中工作。脚本是否需要是shell脚本而不是Apple脚本?我看到有人说“Cron现在不适合在OS X上执行此操作。请使用LaunchAgent或LaunchDeamon(启动)。”
Vincent Sun

@VincentSun您无法通过cron(或launchd)直接启动AppleScripts。 osascript 可能对此有所帮助,但如果您需要更多详细信息,请提出新问题。
nohillside

0

您可以像这样使用AppleScript,保存为应用程序:

tell application "Mail"
    set my_message to make new outgoing message
    set subject of my_message to "I restarted."
    set content of my_message to "Not sure why it happened..."
    set sender of my_message to "macman@christianboyce.com"
    --
    tell my_message
        make new to recipient at end of to recipients with properties {name:"macman@christianboyce.com"}
    end tell
    --
    send my_message
end tell

显然,您会将发件人和“收件人”更改为您自己的电子邮件地址。

然后,您可以将脚本保存为应用程序,并将其添加到您的登录项目中。 (这假设您的Mac设置为自动登录。)查看图片。我的登录项中显示的最后一项是脚本应用程序。

Login Items in System Preferences, showing MyScript application will load at login

关键是将脚本保存为应用程序。那样,而不是 开盘 脚本,你正在执行它。

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.