我有一个非常奇怪的情况,当记录到我的Centos主机的终端时,大写r不起作用,它没有输入任何内容。
例如,当我编辑文件时,它确实有用。
经过长时间搜索可能的问题后,我想我发现问题是我没有R
的绑定关联,请参阅bind -p
的输出并从中提取:
=======
"M": self-insert
"N": self-insert
"O": self-insert
"P": self-insert
"Q": self-insert
"S": self-insert
"T": self-insert
"U": self-insert
"V": self-insert
============
你可以看到“R”缺失,我该如何添加?请记住,我不能在终端输入“R”:)
答案 0 :(得分:5)
你试过这个吗?
bind '"R":self-insert'
或者,如果你不能输入“R”:
bind '"'`echo -e '\x52'`'":self-insert'
答案 1 :(得分:1)
rcap=$(echo r | tr '[a-z]' '[A-Z]')
此命令将rcap
变量设置为R
。现在,您可以在任何地方使用$rcap
代替R
,例如在恢复R
:
bind "$rcap":"self-insert"
当然,您也可以编辑脚本并从bash
获取脚本,然后您可以使用R
。
答案 2 :(得分:0)
我的猜测是在某处删除了映射。运行bash -x
以启动新shell并查看启动时执行的命令。
您还可以尝试将bind "R":"self-insert"
添加到.bashrc
并开始新的终端。