共计 674 个字符,预计需要花费 2 分钟才能阅读完成。
最近,xiaoz 在同一个 SSH 客户端下应用一个 VPS 终端时,当我按向上箭头↑和向下箭头↓时,呈现乱码符号^[[A^[[D
。我通过 ChatGPT 和互联网搜寻也未能解决,最终还是凭借教训解决了这个问题。
长期解决
xiaoz 应用的操作系统为 Debian 11,非 root
用户(其它 Linux 发行版应该也是一样的)。仔细的敌人会发现终端最后面是一个 $
符号,这种如同默认是应用的 shell 为 sh
,为了验证 shell 类型,输出echo $SHELL
进行查看:
$ echo $SHELL
/bin/sh
果不其然,shell 应用的 sh
,而后我输出bash
命令后将 shell 切换为了 bash
模式,后面的符号变成了user@GreenCloud:/data$
当我再次输出向上箭头↑和向下箭头↓查看历史命令的时候不再呈现乱码符号,问题得以解决。
永恒解决
下面那个办法只能治本无奈治标,下次登录时问题仍然存在,咱们能够应用 chsh
命令来扭转指定用户的默认 shell 类型,命令如下:
# /bin/bash 为 shell 类型,user 改成你本人的用户名
chsh -s /bin/bash user
当用户下次登录时,他们将应用 bash 作为其默认 shell 终端类型。这样问题就永恒解决了。
结语
Linux 下,如果用户应用的 shell 类型为 sh
可能导致箭头↑↓呈现乱码符号:^[[A^[[D^
,能够通过 bash
命令来长期解决,或应用 chsh
命令来更改用户的 shell 类型,从而永恒解决,有相似状况的无妨参考。
此文章首发于我的独立博客:https://blog.xiaoz.org/archives/18644
正文完