launchd相关内容
我有一个~/Library/LaunchAgents/setenv.JAVA_HOME.plist文件,其中包含如下/bin/launchctl调用:
..
我已经编写了一个bash脚本来持续检查服务。该脚本有一些函数,还调用其他源bash文件,在手动执行时运行良好。该脚本有一个连续循环语句,类似于 while true; do { $path/is_it_running if [ "$?" == "0" ]; then { echo "yes, it is running" $path/test if [ "$?" != "0" ]; the
..
我想让我的计算机在每晚11:45将其音量设置为特定级别我正在运行OSX 10.11.4。我可以通过 终端手动设置音量 osascript -e "set Volume 1.7" 或作为 的脚本 set volume 1.7 不过,我希望它被安排在晚上。在网上很难找到任何不是超级过时的东西。我真的不想用iCal。从我在网上发现的情况来看,launchd是可行的,但作为一个新手,我不知
..
我有一个应用程序在 iPhone 上崩溃,但只有当它通过 Xcode 启动时才崩溃. 我可以在 iPhone 控制台日志中看到该应用收到内存警告,然后出现一些奇怪的事件,例如: Sun Jul 11 00:03:43 Matts-iPhone com.apple.launchd[1] (UIKitApplication:com.mycom.myapp[0x3f60][5591])
..
我的程序有一半的时间会耗尽内存.在 Linux 下,我可以使用 ulimit -v mem-in-kbytes 对可用内存设置硬限制.实际上,我使用了 ulimit -S -v mem-in-kbytes,所以我在程序中遇到了正确的内存分配问题,我可以中止. 但是... ulimit 在 OSX 10.6 中不起作用.我试过 -s 和 -m 选项,但它们不起作用. 2008 年,在 M
..
我最近使用 Homebrew 安装了 Jenkins.我还使用 Homebrew 安装了 Mercurial. 我可以从终端成功克隆一个 hg 存储库.但是,如果我尝试在 Jenkins 的工作中做同样的事情,它就会失败. 所以,在工作中,我告诉 Jenkins 运行一个 shell 脚本 echo $PATH.果然,路径 /usr/local/bin 不存在.如果我从终端执行相同的命
..
我正在尝试改进适用于 iOS 的 Hudson CI,并在系统启动后立即启动 Hudson.为此,我使用以下启动脚本: 标签Hudson CIProgramArguments/usr/bin/java-jar
..
MacOSX launchd 将 -psn... 参数传递给应用程序.如何告诉 argparse 如何解析参数?它基本上是 -psn_([0-9]+)_([0-9]+) 但我很好,如果它只是解析 -psn(\S*)>.这可能吗? (参见 此处 有关进程序列号 (PSN) 的一些文档.还有 这里 是我关于如何处理参数的问题.) 解决方案 查看 psn 参数的结构,使用 argparse
..
我最近在两台不同的机器上注意到的一点是,当我启动时,通过 MacPorts 安装的 Apache2 似乎停止了启动.诚实的事实是,我以前不能发誓它这样做了,但我想我会注意到这一点,因为安装 LaunchDaemon 是我安装过程的一部分.事实上,如果我尝试重新加载 LaunchDaemon,它会失败: $ sudo launchctl load -w/Library/LaunchDaemons/
..
我一直在尝试设置一个脚本,以使用 launchd 定期运行 Python 程序.python 程序失败是因为它找不到我的导入——我知道这是因为我在日志文件中发现了错误.为了解决这个问题,我创建了 ~\.MacOSX\environment.plist,并在那里复制了我的 PYTHONPATH,注销并再次登录.这似乎不足以解决问题,我不知道还能尝试什么. 我运行的是 OSX 10.8.3.
..
我已经为我的驱动程序创建了卸载程序,该卸载程序从/Library/LaunchDaemons 中删除了与其匹配的plist文件,因此在下一个引导周期中不会再次加载该文件.但是,它似乎对引导计算机后仍在正常加载的驱动程序没有任何影响. 在对此事进行了一些研究之后,我发现 kextcache 是此行为的原因,为了清除/使之失效,我需要 touch 安装目标卷所在的文件夹.但是,它没有任何作用.
..
我正在尝试编写一个仅在工作日每天运行一次的启动脚本.但是,一旦我加载了脚本,它就会每分钟运行一次,而不只是按计划运行.无论我是以我自己还是以超级用户身份加载脚本,都会发生这种情况: launchctl load〜/Library/LaunchAgents/org.myname.foojob 或 sudo launchctl load/Library/LaunchDaemons/o
..
我有一个按用户启动的代理.在它的.plist中,我想使用 $ HOME 环境变量. 有可能吗? (这是“程序"键,我想将其定义为"$ HOME/bin/myscript") 解决方案 launchd不会对其.plists中的值执行任何替换,因此无法以您尝试执行的形式进行.您可以做的是将要运行的命令交给shell,然后让它 it 执行变量替换并运行该命令.例如,您可以将 Prog
..
我一直在设置 launchd.plist XML,该XML在每次安装特定的USB设备时都会运行.我按照 xpc_events(3)手册页,无论何时安装设备,它都在运行应用程序. 我遇到的问题是,只要仍然安装设备,该应用程序就会每10秒钟运行一次.如何设置它,使其仅在将设备插入USB端口时才运行一次?
..
我运行一个自定义python脚本,以通过launchctl更新各种动态DNS服务器,它每15分钟运行一次.这既是滥杀滥伤,又是倒杀. 如果脚本仅在可访问性发生变化时才执行,然后每30分钟作为一次备用,则会很好.我可以很容易地更新Python脚本,以在调用更新之前检查外部地址是否已更改,但是如果我的连接断开并返回了另一个IP地址,我就不必等待15-30分钟 请注意,这与keep aliv
..
我正在尝试让python脚本在启动时运行.我有以下文件:com.test.service.plist:
..
我有一个执行以下操作的shell脚本 startup.sh (创建RAM磁盘并启动teamcity代理): #!/bin/bashDISK =`/usr/bin/hdiutil attach -nobrowse -nomount ram://16777216`/usr/sbin/diskutil擦除卷HFS +"RamDiskCache" $ DISK/Users/administrator/b
..
macOS Catalina 我有一个python脚本,应该将文件写入外部驱动器.如果我手动运行脚本,则此方法有效.但是,如果该脚本是从LaunchAgent bash脚本开始的,则没有这样做的权限. 例如,简化的python脚本: ,其中open('/Volumes/nas_1/test/somefile.txt','a')作为the_file:the_file.write('He
..
我有一个在启动时运行的shell脚本,用于备份MAMP MySQL安装.不幸的是,如果MAMP没有运行,它将抛出一个错误并将其发送到内部邮件.我希望忽略任何错误(发送到/dev/null),但是如果没有错误,请继续. 我尝试了以下操作,该操作可以在MAMP运行时正确创建备份,但是如果未运行则发送邮件(stderr): #!/bin/bash /Applications/MAMP/Lib
..
我正在尝试创建助手对象(它可以是守护程序或代理).如您所见,Chrome和Safari帮助程序应该按需启动它,并且它应该有多个实例. 我尝试了什么? 我已经引用了这些 Apple Docs ,发布教程& 在Mac OS X中创建启动项 这里提到,对于许多进程,我们应该使用NumberOfProcesses键,但我在活动监视器中只看到一个实例. 我的plist看起来像这样
..