zl程序教程

您现在的位置是:首页 >  其他

当前栏目

Linux vim | vi 的使用

2023-02-18 16:38:32 时间

文章目录

vim的使用
vim和vi的区别
1.vim是vi的升级版
2.vim有高亮显示
vim的三种模式
命令模式(command):用vim打开一个文件,此时就是命令模式,标识符:1.光标闪动;2.最后一行有文件详细信息
输入模式(insert):按aio任意一个字符进入输入模式,标识符:insert
			a:光标之后输入
			A:光标所在行行尾输入
			I:光标所在行行首输入
			i:光标之前输入
			o:光标下一行输入
			O:光标上一行输入
末行模式(ex):最后一行做操作,标识符:“:”(冒号)
三种模式的切换
1.命令模式 aio ---->  输入模式
		  <-----esc
2.命令模式 : ---->  末行模式
		  <-----esc
光标移动
1.上下左右方向键
2.hjkl左下上右
行内跳转
命令模式
行首:home/^(shift 6)
行尾:end/$(shift 4)
单词:w
行间跳转
命令模式
gg:跳转到首行
G:跳转到尾行
5gg/5G:跳转到第5行

末行模式
:3:跳转至第3行
:%:跳转至最后一行
页面跳转
pgup
pgdown
复制
命令模式
	yy:复制光标所在行
	yw:复制单词
	3yy:复制光标所在行到下面的2行(包含光标所在行)
末行模式
	:8,26y:复制8到26行
	:%y:复制全文
粘贴
p(小):粘贴到光标下一行
P(大):粘贴到光标上一行
删除
命令模式
	dd:删除光标所在行
	dw:删除单词
	3dd:删除光标所在行到下面的2行(包含光标所在行)
	x/del:删除光标所在字符
	D:删除光标所在字符到行尾的内容
	dgg:删除光标所在行到首行内容
	dG:删除光标所在行到尾行的内容
末行模式
	:8,26d:删除8到26行
	:%d:删除全文
剪切:删除+粘贴
撤回
命令模式
	u:一步步撤回
	
反撤回:ctrl r
保存、退出
命令模式
	ZZ(大写)
末行模式
	!表示强制(:wq!)
	:w保存
	:q退出
	:wq/x保存退出
调用:
	在vim中:!hostname  调用主机名
设置行号、取消行号
末行模式
:set nu   设置行号
:set nonu 取消行号
:noh 	  取消高亮
查找
命令模式
/root 
	n:往下
	N:往上
?root 
	n:往上
	N:往下
替换
末行模式
:s/root/qq/   将光标所在行的第一个root替换为qq
:s/root/qq/g   将光标所在行的所有root都替换为qq
:1,5s/bin/wx/g  将1到5行的所有root都替换为qq
:%s/bin/wx/g   将全文的所有root都替换为qq
批量注释
末行模式
:1,5s/^/#
:1,5s#^#//

可视化视图
1.ctrl v
2.选中你要注释的行
3.按I(大写)
4.按#
5.esc(两下)
取消批量注释
末行模式
:1,5s/#//

可视化视图
1.ctrl v
2.选中你要取消注释的行
3.按d
读入、写入
vim 2.txt
:r /etc/hosts
在光标下一行读入

写入
vim 2.txt
:w /tmp/20.txt

练习

1.通过cp /etc/passwd /tmp/生成vim练习模板文件,用vi编辑器打开/tmp/passwd文件,并以此文件作为练习素材。 
2.在/tmp/passwd文件中显示行号。 
3.在第5行后读入/etc/hosts和/etc/selinux/config的内容。 
4.切换到最后一行,读入/etc/passwd的内容。 
5.删除10到20行的内容。 
6.将6、7行剪切到100行后。 
7.在文件中查找”bin”字符串。 
8.将文件中所有的”bin”字符串替换为”easthome”。 
9.保存该文件后退出vi编辑器。 
10.滤除该文件所有的空行之后,保存到/media/passwd.txt。 
11.删除/root/passwd.txt。 
输出重定向 >、>>、2>、&>
> (覆盖)

>> (追加)

2> 错误重定向:将错误内容丢到后面文件中

2>> 错误重定向:将错误内容丢到后面文件中

&>混合重定向

grep(grep sed awk)

-i 忽略大小写


bash$:以bash结尾

-v:取反

^#:以#开头

^$:空行

从文件/etc/resolv.conf中找出包含na的行写入到文件
/root/lines.txt中,要求顺序与原文件中一致,并且不包含注释行