vi和vim编辑器
vi和vim编辑器是Linux最常用的编辑器
(两者最大的区别就是vim彩色显示,写脚本时还有语法检验,而vi没有)
CentOS7没有vim,需要手动安装
yum -y install vim-enhanced-7.4.629-6.el7.x86_64
下面为大家总结一些基本命令的使用:
进入vim
vim 文件名
进入Insert模式的三种方法:按键a(光标从首行第二位开始编辑) 按键i (光标从首行第一位开始编辑) 按键o(光标从第二行开始编辑)
退出insert模式并保存:esc退出编辑模式,
:wq 退出并保存 加!表示强制
另存为: :w /tmp/aaa.txt (将当前编辑的文件另存为/tmp/aaa.txt)
将当前文件的部分内容存到一个新的文件: :1,3 w /tmp/aaa.txt (将当前文件的第一到第三行写到/tmp/aaa.txt中存起来)
显示行号:查看模式下输入 :set nu (临时设置)
/etc/vimrc 是系统范围的初始化配置
~/.vimrc 个人的vim初始化配置
在这文件中写入set nu 即可 (永久设置)
取消行号:查看模式下输入 :set nonu
光标定位:查看模式下输入 :行号
查找关键字:查看模式下输入 /关键字 按n键在关键字之间切换
从开头处开始搜索:/关键字
从结尾处开始搜索:?关键字
向下搜索:n
向上搜索:N,或者shift+n,或者shift+#
查找文件中的空格空行:查看模式下输入 :set list
快捷操作
复制行:光标定位到要复制的行,按yy,然后定位到要黏贴位置的行的前一行,按p
复制多行:光标定位到要复制的行,按nyy(n为从当行起,往下复制的行数),然后定位到要黏贴位置的行的前一行,按p
删除光标所在行:dd(严格意义是剪切)
删除多行:ndd(n为要删除的行数,将删除光标所在行及其以下几行)
删除首行至光标处:dgg
删除光标行至文件末尾之间的行:dG
删除光标处至行尾:d$
删除光标出到行首:d0
撤销前一步操作:u
光标快速定位到尾行:G
光标快速定位到首行:gg
光标快速定位到行位:end键
光标快速定位到行首:home键
在光标处读取一个新文件加入此文件: :r 文件路径
全局替换:
:s /替换目标旧内容/替换的新内容/ (只替换光标所在行匹配到的第一个目标)
:s/替换目标旧内容/替换的新内容/gc (替换光标所在行匹配到的所有目标)(c的作用是需要操作者确认再执行)
:%s/替换目标旧内容/替换的新内容/ (%代表所有行,g代表所有列,只替换所有行匹配到的第一个目标)
:%s/替换目标旧内容/替换的新内容/g (替换全文所有匹配到的目标)
:1,5 s/替换目标旧内容/替换的新内容/g (替换1到5行所有匹配到的目标)
:7,$ s/替换目标旧内容/替换的新内容/g (替换7到最后一行所有匹配到的目标,$表示最后一行)
:,8 s/替换目标旧内容/替换的新内容/g (替换当前行到第行匹配到的所有目标)
:%s#/root#/Root# (这里旧内容为/root,新内容为/Root,分隔符不再用/,而是使用#)
:4,9 s/^#// 4-9行的开头#替换为空
:5,10 s/.*/#&/ 5-10前加入#字符 (.*整行 &引用查找的内容)
扩展;
vim的可视化模式(Ctrl+v进入可视化模式)
区块选择的按键意义
v 字元选择,会将游标经过的地方反白选择!
V 列选择,会将游标经过的列反白选择!
[Ctrl]+v 区块选择,可以用长方形的方式选择资料
y 将反白的地方复制起来
d 将反白的地方删除掉
p 将刚刚复制的区块,在游标所在处贴上!
vim多档案编辑功能
vim 文件名1 文件名2
此时窗口会打开文件名1的文件
:files (列出当前在编辑的文件)
:n(切换到下一个文件)
vim多视窗编辑功能
vim打开一个文件
:sp 另一个文件路径
此时就会分割窗口显示
Ctrl+w 在不同文件间移动光标
想要结束任何一个文件,:q等命令结束它们即可
Linux中除了vim编辑器,还有其他编辑器,下次有机会再说吧!