VI编辑器

vi默认模式为命令模式

基本编辑命令都是1到2个字母,如i和cw(change word)

命令特点:

  • 命令大小写敏感
  • 输入的时候没有回显
  • 不需要回车

也有一些命令有回显如/、:和?等。

问答 ::

总结 ::

打开关闭文件

在命令行上指定路径和文件名。

使用vi时可能会出现一些问题如:

  • 终端类型引起的问题
  • 文件已经存在
  • 处理ex line-editing模式
  • 文件只读的提示
  • 不能编辑的文件(目录、非ascii、可执行文件等等)

遇到这些问题时可以用:quit!强制退出。

:w命令保存文件,:wq、ZZ保存并退出。

问答 ::

总结 ::

不保存而退出

:e!放弃自打开文件以来所做的编辑操作。

:q!不保存而强制退出。

保存文件可能遇到:

  • 文件已经存在。可以用:w!强制覆盖文件,或:w newfile写入其它文件。
  • 没有权限写文件。同上用:w newfile。
  • 文件系统满了。用:!rm junkfile删除不需要的文件腾出空间。:!df查看硬盘空间。
  • 临时文件系统满了。
  • 硬盘空间限制达到上限。

问答 ::

总结 ::

简单编辑

vi命令

vi有两个模式:命令模式和插入模式。进入时默认为命令模式。按ESC一到二次可退回命令模式。

移动光标

命令模式下h j k l分别代表左、下、上和右。

移动前可以加数字参数比如4l代表按4次l。

通过:set wm=10这样的选项可以让vi在距右边10个字符时自动插入换行符。

行内移动:0移到行首,$移到行末。

:set nu显示行号。

块移动:w和W向前移动一个单词,b和B向后移动一个单词。两组的区别在于移动时大写的命令将包含标点。块移动命令也可以带数字参数。

问答 ::

总结 ::

简单编辑指令

a追加,c修改,d删除。