命令行中的MySQL向后和向前搜索历史记录

时间:2019-03-29 06:35:20

标签: mysql command-line

我可以像在bash中那样在MySQL命令行中开始向后历史搜索,例如使用 ctrl + R 。但是与bash不同,一旦进入以 Ctrl 启动的历史记录搜索,我就不能使用 Ctrl S 进行前向历史记录搜索R

我已经将XON / XOFF设为stty -ixon中的~/.bashrc,所以我认为这不是问题。

在命令行MySQL命令行中进行历史搜索时,如何使用正向搜索?为了发出先前的命令,使用子字符串搜索在历史记录中上下移动非常重要。

1 个答案:

答案 0 :(得分:1)

在主目录中创建一个包含以下内容的.inputrc文件

$if Mysql
"\C-s": forward-search-history
$endif

~/.inputrcreadline库的初始化文件。通常不需要这样做,因为所有使用readline的应用程序都带有默认绑定,足以满足大多数用户的需求。 bash包含Ctrl-S的{​​{1}},但forward-search-history不包含。将绑定放入mysql中会为所有应用程序明确启用它。最好使用~/.inputrc来限制对我们特别感兴趣的应用程序的添加。有关更多信息,请阅读the manual

由于$if ... $endif在许多终端仿真环境中用于其他目的,因此在您的情况下可能仍需要Ctrl-S。为了避免XON / XOFF的麻烦,即使我知道使用非标准键绑定是一个不好的做法,我还是重新定义stty -ixon,因为我比Ctrl-F还需要forward-search-history,反正我也有箭头。我建议您也这样做。