为 Ruby/Rails 动态更改 iTerm2 选项卡标题
我使用的是 iTerm2,通常会打开许多选项卡。不幸的是,所有选项卡都显示相同的标题“ruby”,因为它都是 ruby 脚本。
但一个是rails服务器,另一个是rails控制台,下一个是“spork”,...我想将选项卡标题动态设置为“服务器”,“控制台”或类似的内容,只要进程正在运行并返回完成后恢复为默认值(“bash”)。
有人知道该怎么做吗?
谢谢。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
此命令将选项卡的标题设置为 MY_NEW_TITLE
echo -e "\033];MY_NEW_TITLE\007"
This command will set a tab's title to MY_NEW_TITLE
echo -e "\033];MY_NEW_TITLE\007"
执行此操作的最佳方法取决于您的 shell。
我使用 zsh,它允许您定义在运行命令时、在打印提示之前等运行的钩子函数(实际上,我正在使用的代码位于 github。
看起来 bash 有 。
href="https://superuser.com/questions/175799/does-bash-have-a-hook-that-is-run-before-executing-a-command">类似 可能在此处的其他答案之一中使用 echo 命令,或者使用 zsh 的 title 函数在脚本中设置标题,然后确保使用在绘制下一个提示之前运行的钩子将其设置回来。
The best way to do this depends on your shell.
I use zsh, which allows you to define hook functions which are run when command are run, before the prompt is printed, etc (actually, the code I'm using lives on github.
It looks as though bash has similar functionality.
I'd probably use the
echo
command in one of the other answers here, or zsh's title function to set the title from within your scripts, then ensure it's set back using a hook which runs before the next prompt is drawn.