使用linux系统,VI编辑器我想是我们都应该熟悉的,平时有些命令总是忘 这里作下笔记,也好及时查询:)
vi xxxxx文件
- key i 进入编辑模式(光标停留位置)
- key a 进入编辑模式(光标停留位置前进一个字符)
- key shift+a (即大写A) 进入光标所在行的末尾并进入编辑状态
- key shift+i (大写I) 进入光标所在行的开始位置并进入编辑状态
- key o 在光标所在行的下一行新开一行
- key shift+o 在光标所在行的上一行新开一行
- key r 替换光标所在位置的字符(只替换一个字符,之后操作和i进入编辑状态后的操作一样)
- key shift+r 从光标开始位置一直替换其后所有字符(输入越多替换越多)
- key ctrl+f 翻页(前一页)ctrl+b(后一页)ctrl+u向前翻动半页 ctrl+d 向后翻动半页
- key x 删除光标所在字符(一直x键一直删除操作 知道按其他键进入编辑模式(等同于i)
- key X删除光标前面一个字符
- key dd 删除当前行
- key dw删除当前一个单词(word)
- key d $删除光标位置到本行末的字符
- key ndd 删除n行
- key d0(数字0)删除光标前面所有字符并将本行移植0列(之操作本行)
- key dG删除光标后面所有字符(删除内容到文件末尾)
- key :n 到达第n行的开头(未进入编辑模式)
- key :set number 显示行号
- key :set nonumber 取消行号
- key esc 退出编辑模式
- key :wq 保存退出编辑器(非编辑状态)
- key :q 退出编辑模式(不保存)(非编辑状态)
1-20的命令都是在非编辑状态下的命令 编辑状态只能是输出此key的keychar
在非编辑模式下 查找操作
:/pattern(查找内容正则)exp: :/echo查找echo单词(从当前位置到末尾查找)
:?pattern 从当前位置到开始位置查找
n 重复上一次查找 想当于 eclipse或ue中的下一个
N 重复上一次查找 想当于 eclipse或ue中的上一个
替换操作:
:1,$s/oldchar/newchar/g
exp:替换本文档中所有的echo为echo1
:1,$ s/echo/echo1/g
$代表末尾 1代表开始
:m,n s/oldchar/newchar/g
m开始行 n结束行
如果没有m n则为当前行替换操作