除非我通过 VNC 进入 Mac,否则 OSX Terminal.app 似乎会“暂停”

除非我通过 VNC 进入 Mac,否则 OSX Terminal.app 似乎会“暂停”

所以我的设置有点复杂,但让我看看是否可以简化

我在远程 OSX 机器上运行 Mono 应用程序。此应用程序有时会使 Mono 运行时严重崩溃。

每 2 分钟通过 launchctl 运行一次恢复 shell 脚本。此脚本通过以下方式检测单声道死亡:ps ax | grep mono

如果进程已终止,它将运行以下 AppleScript 来生成一个新的终端窗口

osascript -e 'tell app "Terminal" to close every window'
osascript -e 'tell app "Terminal" to do script "mono --server myapp.exe'

我在“用户空间”的终端窗口中运行 Mono 应用程序的原因是,该应用程序与其他窗口应用程序交互,并且不能直接从 appchecking.sh 文件生成

但有时上述过程会失败并出现以下错误

$ osascript -e 'tell application "Terminal" to open'
31:35: execution error: An error of type -10810 has occurred. (-10810)

奇怪的是,在这种状态下,如果我通过 SSH 进入受影响的机器,终端似乎没有运行。A 什么也ps ax | grep Terminal没产生。但是,如果我通过 VNC 进入受影响的工作站,终端进程突然变得可见,我的脚本不再返回该错误

OSX 计算机设置为自动以默认用户身份登录。如果我在此状态下重新启动计算机,它就会恢复正常。我猜我的 -10810 错误的根源是什么(猜测我以某种方式被注销并且我的 appcheck.sh 不再以我的用户身份运行?)

相关内容