![如何配置 .inputrc 以便 ALT+UP 具有 cd 的效果](https://linux22.com/image/16532/%E5%A6%82%E4%BD%95%E9%85%8D%E7%BD%AE%20.inputrc%20%E4%BB%A5%E4%BE%BF%20ALT%2BUP%20%E5%85%B7%E6%9C%89%20cd%20%E7%9A%84%E6%95%88%E6%9E%9C.png)
应该可以通过让 ALT+UP 生成连续的键盘输入来实现,这相当于cdspace..ENTER通过宏定义来实现。但不知道具体怎么做。
答案1
要真正执行您所要求的操作,请将以下行放入您的~/.inputrc
:
"\e\e[A": "cd ..\n"
这是当您按+\e\e[A
时终端发送的字节序列(被解析为转义字符),某些终端可能会发送或其他序列。要了解终端发送的序列,请运行并按 键(转义将显示为)。AltUp\e
\e[1;3A~
cat
^[
在 bash 中,原则上您可以将密钥绑定到 shell 代码,因此理论上这应该可行:
bind -x '"\e\e[A":cd ..'
然而从 bash 4.2 开始由于难以修复的实施错误,它不起作用。 Zsh专家斯蒂芬·查泽拉斯有一个解决方法:
bind -x '"\201":cd ..'
bind '"\e\e[A":"\201"'
效果有些令人困惑,因为提示没有重新绘制。
在 bash ≥4 中,添加shopt -s autocd
到您的~/.bashrc
.然后,您只需输入 即可更改到父目录(或任何目录)..
,而无需键入cd
命令。