历史的向上箭头在 SSH 上不起作用

Aja*_*ngh 13 shell login command-history

因此,当我使用向上箭头时,它不会显示上一个命令的历史记录,而是 ^[[A 和向下 ^[[B 我不知道这叫什么,但我也有 $ 但运行 su 没有它。

使用 Ubuntu 服务器 16.04.1

小智 22

并非所有 shell 中都存在历史记录。您需要启动一个带有历史记录的外壳,例如bash. 为此,只需键入外壳的名称,例如

bash
Run Code Online (Sandbox Code Playgroud)

或可执行文件的完整路径,例如

/bin/bash
Run Code Online (Sandbox Code Playgroud)


Gil*_*il' 5

您的登录 shell 似乎是/bin/sh. 在 Ubuntu 上,这是一个用于脚本编写的 shell,它没有任何舒适的命令行版本功能,例如历史记录。要获得正确的命令行 shell,请将登录 shell 更改为 bash 或 zsh:

chsh -s /bin/zsh
Run Code Online (Sandbox Code Playgroud)

或者

chsh -s /bin/bash
Run Code Online (Sandbox Code Playgroud)

如果该机器有限制,阻止您更改登录 shell,您可以告诉sh在登录时执行 bash 或 zsh。看看当我的系统管理员拒绝让我更改它时,如何使用 bash 作为登录 shell