VIM文本编辑
vim定义:vim是Linux系统中一个使用普遍并且功能强大的文本编译器(是vi的升级版本)
vim安装与卸载
本地安装(dpkg-i)
前提:系统中要存在下载好的安装包,并且可能还需要安装包的依赖包
在线安装
语法:
sudo apt-get update:更新软件源
sudo apt-get install vim:安装vim,这里的vim可以换成其他程序
卸载程序
语法:
sudo apt-get remove (vim):卸载vim,这里的vim可以换成其他程序
vim的使用
启动
语法:vim
启动vim后,此时vim处于命令模式
1.系统命令行输入vim,就可以启动vim
在vim中导入待编辑的文件:
:r :代操作文件
2.系统命令行输入vim 待编辑文件名,启动vim同时会打开待编辑文件
说明:文件打开后,默认光标位于文件开头(第一行第一列)
3.系统命令行输入vim 待编辑文件名 +,启动vim同时会打开待编辑文件
说明:文件打开后,默认光标位于文件末尾(最后一行第一列)
4.系统命令行输入vim 待编辑文件名 ,启动vim同时会打开待编辑
说明:文件打开后,默认光标位于指定行n(指定n行第一列)
退出
- 在命令模式下:ZZ(大写)(保存了直接退出)
- :q :文件不做任何修改直接退出
- :wq :保存退出
- :q! :强制退出,不保存
注意:使用英文输入法下shift + “ :“会出现“ : ”
Vim的工作模式
- 命令模式:用户输入vim时当作指令处理的
- 编辑(插入)模式:用户输入vim时字符要写入文件中(打开问后按i)
- 末行模式:文件保存和退出vim
命令模式下输入的快捷键解释:
i:在目前光标前插入所要输入之文字
a:在目前光标后开始输入文字
o:在当前光标所在行下新增一空行,并从行首开始输入文字
I:插于行首
A:插于行尾
O:在当前光标所在行上新增一空行,并从行首开始输入文字
Vim的常用命令(在命令模式下使用)
光标移动:
行间移动:
gg:移动光标到第一行
G:移动光标到最后一行
:n :移动到第n行,写法:“:6”移动光标到第六行
列间移动:
$:移动光标到当前行的行尾
0:移动光标到当前行的行首
删除指令
列删除:
x:删除当前光标所在的第一个字符
nx:删除当前光标所在处以及后边共n个字符:
eg:6x:删除从当前光标开始6个字符
X:删除当前光标的左边一个字符
D:删除当前光标至行尾
行删除:
dd:删除当前光标所在行
ndd:删除当前光标所在后边n行
dG:删除当前光标所在行至文件末尾
:n1,n2d :删除n1到n2行
eg:1,12d:删除自行1至行12
拷贝
列(字符)拷贝:
多按几次ESC,然后按v,进入可视方式,移动方向键选中文本,然后按y,就拷贝完成了
行拷贝:
yy:复制当前行
nyy:复制当前行以下n行(包括当前行)
:n1,n2 copy n:复制n1到n2行数据后粘贴到n行(n最后切换成数字)
3,14 copy 2 :从第三行拷贝至第四行,将拷贝内容粘贴到第二行
粘贴
p:如果拷贝的是整行粘贴在当前行下,如果拷贝的是列(字符)粘贴在当前的光标之后
P:如果拷贝的是整行粘贴在当前行上,如果拷贝的是列(字符)粘贴在当前的光标之前
撤销:
u:撤销上一步操作,相当于ctrl+z
U:撤销当前行中的所有操作
ctrl-r:重做撤销的操作(撤销之后后悔了再撤回来)
字符查找
/string:从光标所在处向后寻找“string”字符串,按n可往下继续找,按N可往上继续找
?string:从光标所在处向前寻找“string”字符串,可按N往下继续找,按n向上查找
:set ic:查找时忽略大小写(找f,f和F都被找出来)
:set noic:查找时对大小写敏感(找f,f被找出来,不会找到F)
注意::set ic与:set noic必须在文本查找之前进行
字符替换
:%s /old/new :将全文每一行第一个匹配项old替换成new
:%s /old/new/g :全文替换old为new
:n1,n2s /old/new/g :在n1~n2行间替换old为new
其他常用指令
:set nu :设置行号(这个很好用)
:set nonu :设置取消行号
:ctrl + g :显示文件名,当前的行号,文件的总行数和文件位置的百分比