我最近从 Digital Ocean 设置了一个 Ubuntu VPS。
当我以 root 身份登录时,我能够正确浏览终端
当我以其他用户身份执行 sudo 时,会出现一些非常奇怪的终端行为
- 我无法向左移动光标。它会用奇怪的控制字符覆盖它,例如。
rvm ^[[D
- 我无法使用向上箭头导航上一个命令。我得到了类似的信息 -
$ ^[[A^[[A^[[A
- Vim 完全无法使用。向任何方向移动都会导致插入上述控制字符或“覆盖”现有字符的奇怪组合。我无法删除它们。
- Tab 补全根本不存在。输出与上面相同。
由于这一切在以 身份登录时都可以正常工作root
,因此我怀疑这是与软件相关的问题,这让我希望它可以被修复。
有什么想法吗?谢谢!
答案1
bash
应该为用户的 shell 设置 以使箭头键正常工作。要找出他们使用的 shell,请在以用户身份登录时从终端窗口输入以下内容:
echo $SHELL
如果不是 bash,以下将为用户添加 shell 变量:
sudo usermod -s /bin/bash <username>
希望有所帮助。
答案2
请注意,如果要更改默认 shell,则应编辑壳中的变量/etc/default/useradd
为“/bin/bash“。这样,新用户应该会自动获得/bin/bash
作为他们的 shell(除非在命令行上被覆盖)。