[AIX] ksh中的命令行编辑

来源:互联网 发布:淘宝网上买的铁观音9.9 编辑:程序博客网 时间:2024/05/15 04:44
命令行编辑(Command-line Editing)是ksh的一大主要特色,命令行可以在无需回退或重新输入的情况下使用emacs或者vi模式进行行内(in-line)编辑。

要指定使用某种行内编辑模式,可以使用set -o命令来指定:

$set -o option

这里的option可以是emacs或者vi,通常情况下这条命令可以放置在当前用户主目录下的.profile文件中。

下面我就简要说说我常用的vi模式,因为我常用的Unix文本编辑器就是vi了,所以学起vi模式来也会相对比较容易。而所谓的vi模式其实就是vi编辑器的一个子集,因此其中的大多数命令都是相同的。

和vi编辑器一样,vi模式有2种操作模式——输入(input)模式和命令(command)模式。在输入模式下,可以像平常一样键入和执行命令,但是当按下Esc键时,就会进入命令模式,在此模式下可以输入vi命令来修改当前命令行中的内容或者是历史文件(ksh默认的历史文件是$HOME/.sh_history)中的内容。

下面是一些命令模式中的常用命令:
k       从历史文件中读取前一个命令
j       从历史文件中读取后一个命令
^       移动到当前行的开始处
$       移动到当前行的结尾处
x       删除当前字符
u       撤销前一次的文本编辑命令
/string 在历史文件中向后搜索匹配string的命令
?string 在历史文件中向前搜索匹配string的命令 
原创粉丝点击