tmux终端意外出现控制字符

安稳与你 提交于 2020-10-28 03:42:11

Mac下iterm里运行tmux异常案例。

tmux是一个优秀的终端工具。在以前,其实我是screen党,因为足够简单。

接触tmux后,发现它也够简单,而且相比screen比较实用的一点是,在screen里,无法按下ctrl+a组合键回到当前命令行的行首,而tmux则可以,于是就可耻的叛变了“。

相对于Screen,它也更好用:支持屏幕切分(横切、竖切),支持在一个终端里开启多个会话,也有更丰富的命令行参数。


macos下,用iterm登入远程主机,进入tmux,按下shift+空格/回删,或者ctrl+回删,都会出现控制字符。

#手速稍微快一些,就会出来好几个控制字符
[root@yejr.run tmp]# 7;2u  ;2u  7;5u
-bash: 7: command not found
-bash: 2u: command not found
-bash: 2u: command not found
-bash: 5u: command not found

#在mysql客户端里也会出现
root@yejr.run [test]>select *;2u from t1;

只需要把远程主机的TERM环境变量改成ansi/vt100之类的就没事。

[root@yejr.run ~]# env | grep TERM
TERM=xterm
[root@yejr.run ~]#
[root@yejr.run ~]#
[root@yejr.run ~]# export TERM=ansi
[root@yejr.run ~]#
[root@yejr.run ~]# tmux a -t yejr

#之后在tmux里查看TERM,并且也不会再出现控制字符了
[root@yejr.run ~]# env | grep TERM
TERM=screen

如果是xterm/linux就会出现上述问题。

此外,如果是tmux在本地环境运行也不会,只有连接到远程主机才会这样。

备注:文中图片来自网搜,若有侵权请告知,立即删除。
全文完。
Enjoy tmux :)

叶老师的「MySQL核心优化」大课已升级到MySQL 8.0,扫码开启MySQL 8.0修行之旅吧



本文分享自微信公众号 - 老叶茶馆(iMySQL_WX)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!