如何解决如何将 GNU 屏幕中的窗口标题设置为当前机器的主机名?
有一个关于设置窗口标题的文档:https://www.gnu.org/software/screen/manual/html_node/Naming-Windows.html
我不想在所有机器上更改 .bashrc 来制作动态屏幕。但是,在我的 .screenrc 中设置热键可以很好地使用 :title (C-a A) 命令和适当的参数设置标题。
也许有一种解决方案可以将 uname -n
的输出提供给 :titile 命令。或类似的自动或半自动将窗口标题设置为主机名的东西。
问题是:
- 有没有办法将
uname -n
的输出提供给 :title 命令? - 有没有其他方法可以在不更改 .bashrc 的情况下将窗口标题设置为当前主机名?
解决方法
有两种解决方法:
- 打印出 gnu 屏幕可以为窗口标题
ESC k my-titile ESC \
解析的序列。屏幕将提取my-title
。可以通过以下方式完成:
printf '\ek%s\e\\' $(uname -n);
- 运行
screen -X title my-titile
设置当前窗口的标题。
因为我想为所有我进入的主机做这件事,所以有一个技巧可以使用上述方法之一将实际的 ssh 命令包装到 ssh() 函数中。
例如:
ssh() { printf '\ek%s\e\\' "$1"; command ssh "$@"; }
感谢 freenode 上的 #screen :)
参考:https://www.gnu.org/software/screen/manual/html_node/Dynamic-Titles.html#Dynamic-Titles
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。