Cat*_*Man 5 command-line bash key-binding
在 Ubuntu Server 16.04.1 的命令行上,我想绑定Ctrlup/down到 bash 历史增量搜索功能。我找到了一些帖子如何做到这一点。它们涉及~/.bashrc和~/.inputrc文件。
当我使用 Ctrl 和箭头键导航时出现的奇怪字符表示这是通过.inputrc主目录中的文件工作的。为什么 ctrl + 向左箭头不跳过单词?包含关于不使用.inputrc、关于使用.zshrc和使用的评论.bashrc。我还太新,不能混淆。.inputrc我的新服务器安装中没有任何内容。
我不明白这些事情:
我也没有让它工作。我尝试从以下位置复制文件etc并将其重命名为,.inputrc并在~/其中创建一个新文件:
touch .inputrc
nano .inputrc
Run Code Online (Sandbox Code Playgroud)
文件内容:
$include /etc/inputrc
Run Code Online (Sandbox Code Playgroud)
这是我放入文件中的内容。
# mappings for Ctrl-left-arrow and Ctrl-right-arrow for word moving
"\e[1;5C": forward-word
"\e[1;5D": backward-word
"\e[5C": forward-word
"\e[5D": backward-word
"\e\e[C": forward-word
"\e\e[D": backward-word
# ctrl up,down
"\e\e[A": history-search-backward
"\e\e[B": history-search-forward
Run Code Online (Sandbox Code Playgroud)
两者都不起作用,Ctrl键被忽略。CTRLUp/down不要显示搜索,CTRLleft/right不要跳过单词。我认为它与秒帖子的答案相符。
可能是什么问题呢?
小智 3
我使用的是 Ubuntu 16.04 LTS。将“用于单词移动的 Ctrl-左箭头和 Ctrl-右箭头的映射”放入我的~/.inputrc工作中。
将这些设置保存在文件中是行不通的/etc/inputrc。
我的~/.inputrc文件如下所示:
# mappings for Ctrl-left-arrow and Ctrl-right-arrow for word moving
"\e[1;5C": forward-word
"\e[1;5D": backward-word
"\e[5C": forward-word
"\e[5D": backward-word
"\e\e[C": forward-word
"\e\e[D": backward-word
Run Code Online (Sandbox Code Playgroud)
我从文件中删除了上述内容/etc/inputrc,(以我的拙见)Ubuntu 16.04 似乎无法读取该文件。