vi编辑器基本用法介绍
2013-11-22 19:54
232 查看
vi是Linux系统中编写文件的工具
如果vi出现乱码情况,需要升级vi,命令如下: sudo apt-get install vim //升级vi
vi的启动方式有两种,直接使用vi命令和在vi命令后加一个文件的路径。 后一种启动方式可以把内容和文件关联起来,是更常用的启动方式。
vi的退出方式
:q! 退出且不保存所修改的内容
:wq 退出并保存修改的内容 :x 同wq
:ZZ 同wq
:w 保存修改的内容,但不退出
:q 退出,若文件被修改,则会被要求确认是否放弃修改的内容
vi中使用工作模式区分不同的工作方法。
正常工作模式下用户在键盘上输入的所有内容被当作命令看待。 每次刚启动vi都处于正常工作模式下。
输入模式下用户在键盘上输入的所有内容直接出现在文档中。 命令模式下用户可以输入复杂的各种命令。
正常模式可以向另外两个模式做直接转换,输入模式和命令模式之间不可以直接转换。
正常模式下输入小写字母i可以转换成输入模式(屏幕左下角出现插入两个字) 输入模式下输入esc键可以转换成正常模式
正常模式下输入:可以转换成命令模式,命令模式下输入esc键可以转换成正常模式。
输入模式:
a(append)由光标之后加入资料
A由该行之末加入资料
i(insert) 由光标之前加入资料
I由该行之首加入资料
o(open) 新增一行于该行之下供输入资料之用
O新增一行于该行之上供输入资料之用
nyy 命令可以把当前光标所在行以下的连续n行拷贝到剪贴板上,如果n为1可以省略
ndd 命令可以把当前光标所在行以下的连续n行剪切到剪贴板上,如果n为1可以省略
np 命令可以把剪贴板上的内容在当前光标所在行下面反复粘贴n次,如果n为1可以省略 u 命令可以撤销前一次的正常操作
环境的设定
:set nu 设定行号
:set nonu 取消行号设定
:set ai 自动内缩
:set noai 取消自动内缩 自动内缩(automatic indentation)
~/.vimrc文件用于记录多个set命令,这些命令在每次启动vi以后自动执行
如果vi出现乱码情况,需要升级vi,命令如下: sudo apt-get install vim //升级vi
vi的启动方式有两种,直接使用vi命令和在vi命令后加一个文件的路径。 后一种启动方式可以把内容和文件关联起来,是更常用的启动方式。
vi的退出方式
:q! 退出且不保存所修改的内容
:wq 退出并保存修改的内容 :x 同wq
:ZZ 同wq
:w 保存修改的内容,但不退出
:q 退出,若文件被修改,则会被要求确认是否放弃修改的内容
vi中使用工作模式区分不同的工作方法。
正常工作模式下用户在键盘上输入的所有内容被当作命令看待。 每次刚启动vi都处于正常工作模式下。
输入模式下用户在键盘上输入的所有内容直接出现在文档中。 命令模式下用户可以输入复杂的各种命令。
正常模式可以向另外两个模式做直接转换,输入模式和命令模式之间不可以直接转换。
正常模式下输入小写字母i可以转换成输入模式(屏幕左下角出现插入两个字) 输入模式下输入esc键可以转换成正常模式
正常模式下输入:可以转换成命令模式,命令模式下输入esc键可以转换成正常模式。
输入模式:
a(append)由光标之后加入资料
A由该行之末加入资料
i(insert) 由光标之前加入资料
I由该行之首加入资料
o(open) 新增一行于该行之下供输入资料之用
O新增一行于该行之上供输入资料之用
nyy 命令可以把当前光标所在行以下的连续n行拷贝到剪贴板上,如果n为1可以省略
ndd 命令可以把当前光标所在行以下的连续n行剪切到剪贴板上,如果n为1可以省略
np 命令可以把剪贴板上的内容在当前光标所在行下面反复粘贴n次,如果n为1可以省略 u 命令可以撤销前一次的正常操作
环境的设定
:set nu 设定行号
:set nonu 取消行号设定
:set ai 自动内缩
:set noai 取消自动内缩 自动内缩(automatic indentation)
~/.vimrc文件用于记录多个set命令,这些命令在每次启动vi以后自动执行
相关文章推荐
- bat if嵌套
- 突然想起来我还有浏览历史这个东西可以用来找回我没发微博和说说的那段时间
- SQLite学习手册(内存数据库)
- leetcode难度表
- centOS服务器的搭建(乱来一通)
- 最优矩阵连乘
- SQL 分组后获取其中一个字段最大值的整条记录
- fatal error C1083: Cannot open include file: 'pkfuncs.h': No such file or directory
- 拥有布局 IE haslayout
- Linux基本命令
- 分享下自己一直用的.NET SQLSERVER 封装类下自己写的DataHelper 操作类
- sqlite3使用简介
- 两人取石子游戏 组合数学-博弈问题
- BZOJ 2818 Gcd
- 慢慢找到感觉了
- C语言总结之解读C的声明
- 今天去元征科技,被SB面试了
- Java基础概念_面向对象
- 回溯法求N皇后问题
- Atf 的使用方法(一)-转换和加载