9.4 vi命令的操作范围
前面已经介绍了基本的vi命令,实际上许多vi编辑命令只在一个文本范围上进行编辑操作。一个文本范围可以是一个字符、一个字、一行或其他指定的字符集范围。使用vi命令和文本范围控制键可以更好地完成编辑任务。这类命令使用如下格式:
命令+操作范围其中的命令可以为:
d:删除(delete)命令。删除指定范围的文本,并将它保存到临时缓冲区。y:拷贝(yank)命令。复制指定范围的文本到临时缓冲区。
p:粘贴(put)命令。将临时缓冲区的内容粘贴到当前光标处。
c:修改(change)命令。它是删除命令与插入命令的组合,与其他操作命令不同的是它将vi从命令模式转换到文本输入模式,即删除指定范围文本并进入输入模式。通过按“ESC”键回到命令模式。
其中的操作范围可为:
e:从光标所在位置至该字的最后一个字符。
w:从光标所在位置至下一个字的第一个字符。
b:从光标所在位置至前一个字的第一个字符。
$:从光标所在位置至该行的最后一个字符。
0:从光标所在位置至该行的第一个字符。
(:从光标所在位置到该句子的第一个字符。
):从光标所在位置至下一个句子的第一个字符。
{:从光标所在位置至该段落的第一个字符。
}:从光标所在位置至该段落的最后一个字符。
没有具体的范围控制键表示整行,要想将一行作为命令的操作范围,可以按命令键两次。例如dd删除一行、yy复制一行。
在实际操作中,我们可能会遇到某个指令需要重复执行多次的情况,但如果每次都要输入命令就太麻烦了。在vi的命令模式中,用户可在命令前面加入一个数字n,则此命令会重复执行n次,例如,5x删除从光标位置开始的5个字符。还可以使用两个数字来表示操作的范围,例如,命令:1,10d删除1至10行。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。