通知中心通知将是理想的,但咆哮、弹跳码头、声音等也可以(或者如果这只能在 Terminal.app 中完成,我愿意切换回来)。 iTerm 中是否有一个选项可以打开通知,或者我应该在终端中的命令末尾输入什么?如果是后者,是否可以在流程开始后添加警报(例如,如果我意识到它需要比我最初预期的时间更长的时间,我不擅长猜测)。
Edit
→ Marks and Annotations
→ Alerts
→ Alert on next mark
iTerm
会真正关注您的终端(,位于右上角)。iTerm2
→ Install Shell Integration
我们启动了一个命令,低估了完成时间,我们不想取消或只是等待完成。
您始终可以使用
say
命令。
通常,当您在终端内运行较长的进程并想要更新时,您只需使用此命令即可说出诸如
done
或 error
或 bazinga
之类的内容。
mvn clean install; say done
这个命令构建了一个java spring应用程序,需要很长很长的时间,过程完成后它会说话
done
。
您可以在任何命令后添加以下任意一项,并在命令和命令之间使用分号:
afplay /System/Library/Sounds/Ping.aiff -v 2
osascript -e 'beep 3'
tput bel
或者,如果您喜欢通知中心
osascript -e 'display notification "Lorem ipsum dolor sit amet" with title "Title"'
您还可以在您的个人资料中创建一个别名,称为
notify
并将其添加到命令末尾。所以,在您的登录个人资料中
alias notify="tput bel"
然后
sleep 10; notify
或者,如果您启动命令并且它处于“挂起”状态,只需输入
notify
并点击 Enter
,当命令完成时,它将在最后运行您的 notify
别名,例如
sleep 20
# wait 5 seconds before realising this will take 20 seconds
notify<Enter>
iTerm2
支持Growl
通知。您可以在每个配置文件设置中将其打开。
在
Preferences…
->Profiles
中选择配置文件。
然后在 Terminal
选项卡中有一个选项 Enable Growl Notifications
。
记得还要在
iTerm
首选项中启用 Growl
通知。
如果您想获得给定进程的通知,您可以尝试尝试
Triggers
。您可以在配置文件设置的 Advanced
选项卡中定义触发器。通过这种方式,您可以将 Growl 通知分配给流程的特定输出(正则表达式)。
例如,您可以这样做:
$ mycommand; echo "end-of-my-process"
并将触发器连接到“end-of-my-process”消息。
更新
在 iTerm2.com 上了解有关触发器的更多信息。
您还可以使用
terminal-notifier
,它使用 macOS 系统通知。要通过 Homebrew 安装它只需:
$ brew install terminal-notifier
然后,如果您想在工作/流程完成时显示通知,请使用类似的内容
$ <your job/process command> && echo 'Completed' | terminal-notifier -sound default
显示如下:
您还可以更改通知的声音和图标。 github 存储库中的更多信息:https://github.com/julienXX/terminal-notifier
安装 iTerm2 shell 集成
curl -L https://iterm2.com/shell_integration/install_shell_integration_and_utilities.sh | bash
执行您的命令并连接注意力应用程序,例如
./task && ~/.iterm2/it2attention once
工作完成后,它会导致 iTerm 应用程序弹起其图标。
您还有其他关注选项:
$ .iterm2/it2attention -h
Usage:
it2attention start
Begin bouncing the dock icon if another app is active
it2attention stop
Stop bouncing the dock icon if another app is active
it2attention once
Bounce the dock icon once if another app is active
it2attention fireworks
Show an explosion animation at the cursor