赞
踩
Linux基础是学习云原生的重中之重,如果你还不知道学习路线可以参考:
耗时3个月,线下访谈30+ csdn大佬,规划出了我的云原生学习路线
vim号称编辑器之神,唯快不破,可扩展,各种插件满天飞。
vim源于vi, 但不是vi。 vi是美国计算机科学家比尔.乔伊编写并发布于1976年。
关键是这个只是他职业生涯的一个副产品,没有做什么维护。
vim是布莱姆.米勒于1991年发布。Vim最早的版本是1.14,它是基于Amiga计算机上的AmigaVI编辑器开发而来。
Vim的目标是提供一个兼容vi的编辑器,并在此基础上增加新特性和改进。
优秀的程序员都有个特性,感觉不爽就写个工具。
按下 Esc 键,返回普通模式。
切换到命令行模式:
按下 : 键,进入命令行模式,可以执行各种命令。
在早期的计算机键盘上,没有专门的方向键。因此,在设计vi时,Bill Joy选择了键盘上与字母键相邻的 hjkl 键作为光标移动键。这些键被认为比较容易记忆和使用,并且位于键盘底部,因此可以更自然地控制光标移动。
具体来说,h、j、k、l 键是沿着键盘上的水平和垂直方向排列的
0 和 home键表示切换到行首, $和end键表示切换到行尾
gg 快速定位到文档的首行 , G定位到未行
3gg 或者 3G 快速定位到第3行
vim +<行号> <文件名>
vim <文件名> +"normal <行号>G"
Vim file : 第一行的行首 第一次打开文件
Vim file +5: 跳到第五行
[root@itlaoxin41 ~]# vim passwd +$
vim +10 filename.txt # 打开文件后将光标定位到第10行
vim +10:20 filename.txt # 打开文件后将光标定位到第10行第20列
Vim file +: 跳到最后一行
vim +/<搜索字符串> <文件名>
vim +/example filename.txt # 打开文件并将光标定位到第一个匹配 "example" 的位置
Vim file +/root 第一次打开文件
文本编辑分为删除,复制,粘贴,剪切,撤销
y
复制(以字符为单位) :表示对单个字符进行复制,如果要复制整行,用yy(以行为单位)Nyy
,比如: 2yy ,表示复制2行y$
:从光标所在位置复制到行尾y^
:从光标所在位置复制到行首dd
(删除,以行为单位,删除当前光标所在行)Ndd
,比如: 2dd ,表示删除2行d0
:删至行首d$
:删至行尾p
粘贴ctrl +r
还原撤销过的操作,将做过的撤销操作再还原回去,也就是说撤销前是什么样,再还原成什么样命令模式指的是 执行内部和外部命令,通过: ? / 等进入命令模式,进行操作
/^d
:^意思表示以什么开头 ,查找以字母d开头的内容/t$
:$
意思表示以什么结尾,,查找以字母t结尾的内容常见和常用的命令操作
:q!:退出 Vim
:wq:存盘退出
:s:执行替换
:!:执行外部命令
:edit(一般缩写为 “:e”):编辑文件
:w:写文件
:r:读文件 并且插入
:help:查看帮助
:set nu 设置行号
:set ic 不区分大小写
:set list 显示控制字符 nolist
:set nonu 取消设置行号
:set noic 取消
:set ai 自动缩进,比如换行操作,设置这个功能后,可以在下次操作时进行自动换行
:noh 取消高亮显示
在vim中直接执行,属于临时操作,如果想永久生效,需要设置环境变量:
永久设置环境
/etc/vimrc
设置后会影响到系统所有的用户
~/.vimrc
#在用户的家目录下,创建一个.vimrc。这样只影响到某一个用户,没有自己建一个
例:
[root@itlaoxin63 ~]# cat /root/.vimrc
set nu
:!ifconfig
#调用系统命令
读取其他文件。(把其他文件中的内容追加到当前文档中)
:r /etc/hosts
文本替换,可以使用
:s/old/new:将当前行中的第一个匹配到的 "old" 替换为 "new"。
:s/old/new/g:将当前行中所有匹配到的 "old" 替换为 "new"。使用 g 标志表示全局替换。
:s/old/new/i:进行不区分大小写的替换。使用 i 标志表示忽略大小写。
:%s/old/new:将整个文件中的第一个匹配到的 "old" 替换为 "new"。
:%s/old/new/g:将整个文件中所有匹配到的 "old" 替换为 "new"。使用 g 标志表示全局替换。
:%s/old/new/gc:将整个文件中所有匹配到的 "old" 替换为 "new",并在替换前进行确认。
使用 c 标志表示确认每次替换。
:<start>,<end>s/old/new/g:在指定的行范围内进行全局替换。
将 <start> 和 <end> 替换为起始和结束行号。
:s/pattern/replacement:使用正则表达式进行模式匹配和替换。
将 "pattern" 替换为正则表达式模式,"replacement" 替换为要替换成的内容。
常见案例:
:1,3 s/bin/itlaoxin 替换第1到3行中出现的第一个bin进行替换为itlaoxin
:1,3 s/bin/itlaoxin/g 替换第1到3行中查找到所有的bin进行替换为itlaoxin
:3 s/itlaoxin/aaaaa #只把第3行中内容替换了
:% s/s/ssaass/g 将文本中所有的s替换成ssaass
:% s/IT/yyy/gi 将文本中所有的IT替换成yyy, 并且忽略IT的大小写
:% s@a@b@g 将文本中所有的a替换成b
Vim中的可视化模式(Visual mode)允许你在编辑器中选择、操作文本块。在可视化模式下,可以选择字符、行或块,然后对选中的文本应用编辑命令。
批量加#
号:
V模式(列)
进入v模式 移动光标选择区域
编程的时候需要进行多行注释:
删除:再按ctrl+v 进入列编辑模式;向下或向上移动光标 ;选中注释部分,然后按d或者x, 就会删除注释符号。
在这里有两个常用的参数:
缩进:按下">“键对所选文本进行缩进。
反缩进:按下”<"键对所选文本进行反缩进。
1.打开多个文件:在终端中使用Vim命令打开多个文件,例如:
vim file1.txt file2.txt
这将在Vim中打开file1.txt和file2.txt两个文件,并显示一个文件列表。你可以在文件列表中移动光标并按回车键打开你要编辑的文件。
使用命令 :n 或 :next 可以切换到下一个文件
使用 :prev 或 :previous 可以切换到上一个文件
2 .分割窗口:在Vim中,可以使用分割窗口的方式同时显示多个文件。
使用命令 :split 或 :sp 可以在水平方向上分割窗口
使用命令 :vsplit 或 :vsp 可以在垂直方向上分割窗口。
在分割窗口后,使用 Ctrl + W 组合键结合方向键进行窗口间的切换
方法1:以上下形势,打开两个文档
[root@itlaoxin63 ~]# vim -o /etc/passwd /etc/hosts
方法2:以左右方式打开两个文档
[root@itlaoxin63 ~]# vim -O /etc/passwd /etc/hosts
注:ctrl+ww 在两文档之间进行切换编辑。
大写O左右分屏,小写的o上下分屏
以上就是vim的全部内容,可以在评论区留言探讨。
我是沐风晓月,在学习的路上一直前行,期待与你一起进步。
想学习更多内容,也可以关注我师父的博客:互联网老辛
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。