目录
1.vim的安装
1.1 更新源
1.2 sudo apt-get updata
1.3 sudo apt-get install vim
2.三大模式之间的切换。
3.详见vimtutor(可进入Vim中进行详细的学习)
h,j,k,l 移动光标 j:向下 k:向上 h:向左 l:向右
按<ESC>键(这是为了确保您处在正常模式)。
退出:
1) 在命令模式下: ZZ(大写)
2) :q 文件不做任何修改时退出
3) :wq 保存退出
4) :q! 强制退出,不保存(加个!强制退出修改过的东西不保存)
添加文本:
在正常模式下,按i键可添加文本 在光标前插入文本(按ESC模式可返回正常模式)
按 A 键以添加文本 在一行后添加文本
按p键将最后一次删除的内容置入光标之后
更改文本:要改变文本直到一个单词的末尾,请输入 ce
只有在输入模式下,才可进行文字输入,在命令模式下可按“i”或“a”或“o”等键进入输入模式。
i——在目前光标前插入所要输入之文字。
a——在目前光标后开始输入文字。
o——在当前光标所在行下新增一空行,并从行首开 始输入文字。
I——插于行首。
A——插于行尾。
O——在当前光标所在行上新增一空行,并从行首 开始输入文字。
删除:
字符删除
x: 删除当前光标所在处一个字符。(类似与Delete)
nx: 删除当前光标所在处以及后面共n个字符。 例如: 5x表示删除5个字符。
X: 删当前光标的左边一个字符。 (类似与 Backspace )
D: 删除当前光标至行尾。
行删除
dd: 删除当前光标所在行。
ndd: 删除当前光标所在后面n行。
dG: 删除当前光标所在行至文件末尾。
:n1,n2d: 删除n1到n2行。 例如:1,12d表示删除自行1至12行。
输入 dw 可以从光标处删除至一个单词的末尾。
输入 d$ 从当前光标删除到行末。
dw 从当前光标当前位置直到下一个单词起始处,不包括它的第一个字符。
de 从当前光标当前位置直到单词末尾,包括最后一个字符。
d$ 从当前光标当前位置直到当前行末删除。
dd删除一整行
使用计数指定动作:
输入 2w 使光标向前移动两个单词。
输入 3e 使光标向前移动到第三个单词的末尾。
输入 0 (数字零) 移动光标到行首。
也可以d 2w删除两个单词
u可以撤销刚刚的动作
欲撤消在一行中所做的改动,请输入:U (大写的U)
欲撤消以前的撤消命令,恢复以前的操作结果,请输入:CTRL-R
替换命令:
输入 r 和一个字符替换光标所在位置的字符
r: 取代光标处的字符。
R: 取代字符直到按ESC为止。
定位文本:
输入 CTRL-G 显示当前编辑文件中当前光标所在行位置以及文件状态信息。
gg: 移动光标到第一行。
G: 移到光标最后一行。
nG: 移到光标到第n 行。
:n 移到光标到第n 行。
$: 移到光标到当前行的行尾 0(数字): 移到光标到当前行的行首
去到文件的第几行:
vim +n file1 如果file1文件不存在,将建立此文件;如该文件存在,进入文件第n行进行编辑。
Vim中对文件的保存:
Vim可打开一个文件,如果输入的文件不存在,则会新建一个空白内容的文件。
:w 保存到当前文件
:w file 另存到file文件中
:e! 放弃所有修改,从上次保存文件开始再编辑
点ESC可回到命令模式
复制:
复制字符
多按几次ESC,然后按v,进入可视方式,然后移动方向键选中文本, 然后按y,就拷贝完成
复制行
yy: 复制当前行
nyy: 复制当前行以下n行
:n1,n2 copy dn 复制n1~n2 行数据后粘贴到dn行
yy p 复制加粘贴到下一行
剪贴(其实就是相当于删除):
dd:剪贴当前行
ndd:剪贴当前行以下n行
寻找字符串
/string 从光标所在处向后寻找“string”字符串,按n可往下继续找,按 N 向上查找。
?string 从光标所在处向前寻找“string”字符串,按N可往下继续找,按 n 向上查找
:set ic 查找时忽略大小写
:set noic 查找时对大小写敏感
替换字符串
:%s /old/new 将全文每一行第一个匹配项old 替换为new。
:%s /old/new/g 全文替换old 为new
:n1,n2s /old/new/g 在n1—n2行间替换old 为 new
精确查找字符串
在vi中可以通过在字符串中加入如下特殊字符,从而使得查找更加精确。 匹配行首,字符串要以^开头 匹配行尾,字符串要以$结束
例如, 要查找一个以search为行首的行,则键入/^search (注:行首匹配),要查找一个以search为行尾的行,则键入/search$(注:行尾匹配)。
其他常见指令
:set nu 设置行号
:set nonu 取消行号设置
:.= 打印当前行的行号
:= 打印文件中的行数
ctrl+g 显示文件名、当前的行号、文件 的总行数和文件位置的百分比