如何在OSX中自动启动程序?

时间:2008-10-01 16:09:47

标签: macos osx-leopard launchd

我有一个小程序,我想在我的mac启动时自动打开。

因为这个程序接受命令行参数,所以它不仅仅是去System Prefs / Accounts / Login项目并在那里添加它...

从谷歌,我读到我可以在我的用户的主文件夹中创建.profile文件,这将执行我放入其中的任何内容...所以我有一个.profile页面〜像这样:

-rw-r - r - @ 1 matt staff 27 27 Sep 13:36 .profile

包含这个......

/ Applications / mousefix 3.5

但它不会在启动时执行!如果我手动将“/ Applications / mousefix 3.5”输入终端,它确实有效。

有什么想法吗?

7 个答案:

答案 0 :(得分:11)

从这里开始到未来,请查看launchd您想要做什么。所有其他方法已被弃用或现在不受支持。不过,这可能比你想要的重一点。

您的bash shell版本无法正确执行.profile也可能是个问题。尝试将命令放入主目录中的.bashrc,看看是否有帮助。

答案 1 :(得分:4)

您可以使用Lingon帮助构建launchd的plist文件。

答案 2 :(得分:3)

在MacOS上启动时启动内容的最常用方法是使用launchd。您可以创建一个plist文件来告诉它在启动时启动您的程序,其中可以包含参数。

答案 3 :(得分:1)

您可以使用可以运行终端命令的Applescript,然后在启动时启动该AppleScript。

答案 4 :(得分:1)

.profile.bash_profile仅在您打开新shell(即打开终端或通过SSH进入)时发挥作用。此外,我相信如果bash检测到.bash_profile,它将不会查找.profile 如果您希望它在登录时启动,我会查看有关launchd的其他建议

答案 5 :(得分:0)

您总是可以编写一个使用您想要的参数运行它的包装器脚本

答案 6 :(得分:0)

谢谢大家。推出的解决方案非常酷,是的,对于这么简单的事情,它的重量级,但它的好消息,作为一个开发人员,我很乐意修补:)