如何在Ksh中把clear绑定到^L上?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在Ksh中把clear绑定到^L上?相关的知识,希望对你有一定的参考价值。
我如何在KornShell中复制以下bash功能。
bind "C-l":"clear-screen"
我需要这个功能 bind
因为我在使用 set -o vi
在bash中使用,也打算在ksh中使用。
试图在ksh中使用它,却打印出一个错误。
ksh: bind: not found
很抱歉打破这个消息,但你已经注意到这是ksh和bash之间的不同:绑定或定义键映射的能力是不存在的。也没有可编程的命令完成。历史上Korn shell专注于语言设计和功能,而不是交互式终端功能。
GNU bash通过GNU Readline库提供键绑定,该库是由同一个人Chet Ramey开发和维护的。ksh
据我所知,即使在最新的版本中也没有使用这个库,也没有提供一个等价的库。
一个变通的办法是看看你是否可以给终端编程来提供这样的功能。在tmux中,如果你把这个放在你的 .tmux.conf
配置文件。
bind-key C-l send-keys clear
然后tmux会在Control -l之前进行解释。ksh
有机会看到它,并会用 "clear "这个字符串展开。 (下面我打赌tmux使用的是GNU Readline库)
POSIX标准(ksh和bash都遵循这一标准)定义了一个 "别名 "命令。然而一个别名 没有定义为允许控制字符. 一个特定的实现可能会做到这一点,但ksh不会。
也请参见 https:/unix.stackexchange.comquestions82223如何设置键盘快捷键,将预定义的文本输入到x11-xterminal-vi。
以上是关于如何在Ksh中把clear绑定到^L上?的主要内容,如果未能解决你的问题,请参考以下文章
如何克服 Linux 上的 ksh 与 AIX/Solaris/HPUX 上安装的 ksh 之间的不兼容问题?