目录
1.打开文件操作
2.存储及退出文件
3.模式转换
4.光标移动
5.插入
6.删除
7.复制和黏贴
8.查找
9.替换
10.编辑多个文件
11.其他命令
12分屏操作
13 vim的帮助指令
14.七个习惯
1.打开文件操作
vi
进入vi而不读入任何文件
vi filename
进入vi并读入指定名称的文件
vi filename....filename
打开多个文件,依次进行编辑
vi +n filename
进入vi并且由文件的第几行开始。
vi + filename
进入vi并且由文件的最后一行开始。
vi +/pattern filename
打开文件,并将光标置于第一个与pattern匹配的串处
vi -r filename
在上次正用vi编辑时发生系统崩溃,恢复filename
vim -R file
只读方式打开文件
vimdiff fileA fileB
比较编辑两个不同的文件
2.存储及退出文件
保存
:wq 或者 :x
存文件,并且退出vi
ZZ
保存并退出 (:x 表示仅在需要时保存,ZZ不需要输入冒号并回车) ZZ = wq
:w
保存当前文件
:w filename
写入指定文件,相当于另存为,但未退出vi(若未指定文件名则为当前工作的文件名)
可带行范围 :n1,n2 w filename
:w /tmp/1
既然没法存盘,不想放弃所做的所有修改,先临时存到/tmp/1
:saveas
另存为
退出
:q
不作任何修改并退出vi (多屏时用qa)
:q!
放弃任何修改并退出vi
ZQ
无条件退出
编辑
:e filename
打开文件filename进行编辑[相当于退出当前的并打开另一个文件]
:e!
放弃修改文件内容,重新载入该文件编辑
:e
重新载入【类似刷新】
:w !sudo tee %
以普通用户身份打开的vim,修改后以root身份保存
其他
ctrl + z /
fg
暂时挂到后台/跳回编辑页面
:f 或 Ctrl-g
显示文件名,当前光标所在行的行号,总的行数,以及当前行所在文件中的百分比和当前光标所在的列的信息
:!command
暂时退出vi并执行shell指令,执行完毕后再回到vi
:r!command
将命令command的输出结果放到当前行【强大】
:sh
暂时退出vi到系统下,结束时按Ctrl
+ d则回到vi。
vim -x exam.txt
新编辑的文件加密,会提示输入密码
:X
文件加密,会提示输入密码
:map
列出当前已定义的映射
(如何定义映射?)
:jumps
列出关于你曾经跳转过的位置的列表,你最后一个跳转的位置被特别以一个”>”号标记
:marks
列出自定义的标记,包含VIM内部自定义的标识
:%!nl
要对包含空行的所有行进行编号(所有行之前插入行号^I)
:version
显示VIM版本信息,包含特性、编译方式及配置文件目录
:n1,n2 w ! command
将文件中n1行至n2行的内容作为command的输入并执行之,若不指定n1,n2,则表示将整个文件内容作为command的输入【注意空格】例如
:1,4 w! grep tom
ptions
打开一个新窗口,
在该窗口的最开头的注释下面是一个选项列表(do what?)
:r filename
在光标所在处插入一个文件的内容(read)
可加入数字 :nr filename
:f filename
改变编辑中的文件名(file)
相当于复制了一个文件,执行这个命令后,新编辑不会应用于原文件
gf
vim特殊打开文件的方法,打开光标所在处的 word 为名的文件,当然,这个文件要在当前目录内,否则会创建新文件
1.打开文件操作
2.存储及退出文件
3.模式转换
4.光标移动
5.插入
6.删除
7.复制和黏贴
8.查找
9.替换
10.编辑多个文件
11.其他命令
12分屏操作
13 vim的帮助指令
14.七个习惯
1.打开文件操作
vi
进入vi而不读入任何文件
vi filename
进入vi并读入指定名称的文件
vi filename....filename
打开多个文件,依次进行编辑
vi +n filename
进入vi并且由文件的第几行开始。
vi + filename
进入vi并且由文件的最后一行开始。
vi +/pattern filename
打开文件,并将光标置于第一个与pattern匹配的串处
vi -r filename
在上次正用vi编辑时发生系统崩溃,恢复filename
vim -R file
只读方式打开文件
vimdiff fileA fileB
比较编辑两个不同的文件
2.存储及退出文件
保存
:wq 或者 :x
存文件,并且退出vi
ZZ
保存并退出 (:x 表示仅在需要时保存,ZZ不需要输入冒号并回车) ZZ = wq
:w
保存当前文件
:w filename
写入指定文件,相当于另存为,但未退出vi(若未指定文件名则为当前工作的文件名)
可带行范围 :n1,n2 w filename
:w /tmp/1
既然没法存盘,不想放弃所做的所有修改,先临时存到/tmp/1
:saveas
另存为
退出
:q
不作任何修改并退出vi (多屏时用qa)
:q!
放弃任何修改并退出vi
ZQ
无条件退出
编辑
:e filename
打开文件filename进行编辑[相当于退出当前的并打开另一个文件]
:e!
放弃修改文件内容,重新载入该文件编辑
:e
重新载入【类似刷新】
:w !sudo tee %
以普通用户身份打开的vim,修改后以root身份保存
其他
ctrl + z /
fg
暂时挂到后台/跳回编辑页面
:f 或 Ctrl-g
显示文件名,当前光标所在行的行号,总的行数,以及当前行所在文件中的百分比和当前光标所在的列的信息
:!command
暂时退出vi并执行shell指令,执行完毕后再回到vi
:r!command
将命令command的输出结果放到当前行【强大】
:sh
暂时退出vi到系统下,结束时按Ctrl
+ d则回到vi。
vim -x exam.txt
新编辑的文件加密,会提示输入密码
:X
文件加密,会提示输入密码
:map
列出当前已定义的映射
(如何定义映射?)
:jumps
列出关于你曾经跳转过的位置的列表,你最后一个跳转的位置被特别以一个”>”号标记
:marks
列出自定义的标记,包含VIM内部自定义的标识
:%!nl
要对包含空行的所有行进行编号(所有行之前插入行号^I)
:version
显示VIM版本信息,包含特性、编译方式及配置文件目录
:n1,n2 w ! command
将文件中n1行至n2行的内容作为command的输入并执行之,若不指定n1,n2,则表示将整个文件内容作为command的输入【注意空格】例如
:1,4 w! grep tom
ptions
打开一个新窗口,
在该窗口的最开头的注释下面是一个选项列表(do what?)
:r filename
在光标所在处插入一个文件的内容(read)
可加入数字 :nr filename
:f filename
改变编辑中的文件名(file)
相当于复制了一个文件,执行这个命令后,新编辑不会应用于原文件
gf
vim特殊打开文件的方法,打开光标所在处的 word 为名的文件,当然,这个文件要在当前目录内,否则会创建新文件