Bash快捷方式无效


4

我经常ssh到一个有Bash shell的服务器。以前所有正常的捷径都有效,即 up 将是最后的命令, ctrl+r 允许我搜索以前的命令。

但是我今天登录了,这些不再有效,例如 up 现在显示 ^[Actrl+r 显示器 ^R。我怎样才能将它恢复到之前的状态呢?


你确定远程shell是 bash 并不是 sh?什么是输出 ps aux | grep $$
terdon

我得到了一个-ksh和grep进程
rwolst

我认为这肯定已经改变,因为它确实是--bash。
rwolst

Answers:


3

我会发表评论作为答案。听起来你正在使用的远程shell不是bash。你可以通过跑步来检查 ps -p $$。如果没有输出 bash 你正在运行另一个shell。

要将默认shell再次设置为bash,可以运行以下命令:

chsh USER

哪里 USER 是您在远程服务器上的用户名。


2

也许是你的 emacs-mode 未设置为 on

你可以查看 set -o 如果 emacson

如果不是 on 你可以设置它 set -o emacs

还要检查是否 vioff。 (并将其设置为 offset +o vi )。


感谢您的回复,这已经奏效了 up但是 ctrl + r 还是不行吗?!
rwolst

嗯,之前还没有。你能做一个吗? bind -p | grep -i search 检查你是否有键盘绑定 "\C-r": reverse-search-history
Rik

如果它不在那里你可以重新启动(我删除了我的键绑定,然后它返回)。或者你可以做到 bind '"\C-r": reverse-search-history' 但我不知道这是否是另一个问题,如果这可以幸免于重启。
Rik

嗨Rik,贝壳已改为 ksh。我现在只需输入 bash 一切都恢复了。谢谢您的帮助。
rwolst
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.