如何让终端在 OS X 中弹出其应用程序 Dock 图标

如何让终端在 OS X 中弹出其应用程序 Dock 图标

在 OS X 中,当某个程序需要注意时,其底部的 Dock 图标会上下弹跳。在终端中,有时我会运行一长串命令,如下所示:

一个 && b && c

我想在命令末尾附加一条命令,这样当这些命令运行完毕时,终端图标就会上下跳动以提醒我。该怎么做呢?

答案1

弹跳期限可能正是你要找的。摘自网页:

BounceTerm 是 Mac OS X Terminal.app 的一个 SIMBL 插件,当触发铃声或哔声时,Dock 图标会弹起。如果您有一个长时间运行的进程,并且希望在进程完成后收到通知(当然,假设它会发出哔声),那么这个插件会很有用。

无需配置,只需打开 .dmg 文件,运行 Install,然后重新启动 Terminal.app。要卸载,只需从 .dmg 运行 Uninstall 即可。

如果你想确保插件正常工作,请尝试运行

while [ 1 ]; do echo -n '\a'; sleep 2; done 

在您的 shell 中,将焦点放在另一个应用程序中的窗口上。您应该看到 Terminal.app 的停靠图标每两秒钟跳动一次。

因此对于您的情况:

a && b && c && while [ 1 ]; do echo -n '\a'; sleep 2; done

答案2

从 Mac OS X 10.7 Lion 开始,终端会响应 BEL(Control-G)弹出其应用程序 Dock 图标,并且徽章会显示“未读”铃声的数量,直到您查看相关终端†。如果标签栏可见,它还会在背景标签中显示铃声图标,直到您激活它们。

† 更具体地说:如果在铃声响起时终端应用程序处于后台,它会弹回 Dock 图标,并且显示自铃声响起后未激活的窗口和选项卡的铃声计数(无论应用程序作为一个整体是否已被激活)。

也可以看看终端蜂鸣(输出)和咆哮声

答案3

正如其他人指出的那样,BounceTerm 不再需要。

但是,对我来说,echo -n 不起作用。为了让我的终端反弹,我需要回显-e

以下是示例。将其粘贴到终端中,然后快速按 Cmd-TAB 离开以将焦点转移到其他应用程序:

sleep 2; echo -e "\a"

您应该会听到一声嘟嘟声,您的终端停靠图标会弹起,并且您应该会看到一个计数铃声数量的徽章。

相关内容