linux(一)vi和vim

vi

多模式文本编辑器

多模式产生的原因

四种模式

  • 正常模式
  • 插入模式
  • 命令模式
  • 可视模式
vi

man vi

vim

vim正常模式

直接vim回车,或vim空格文件名回车

i进入插入模式

I(shift+i)进入插入模式,且光标到达所在行的开头

a,插入光标所处位置的下一位置

A(shift+a),插入光标所在行的最末尾

o,插入到光标所在行的下一行,原有的光标下面的行依次下移一行

o之前

 o之后

O(shift+o),光标所在行的上一行进入到插入模式

O之前

O之后

正常模式(即vim命令直接进入的模式)下:

h左移

j下移

k上移

l右移

箭头在字符终端中可能有乱码,推荐掌握hjkl

y复制

yy 单行复制

在光标所在处点yy

 光标上移到第三行

 点p,复制

 复制到了第四行

点击3yy

 下面会显示复制了三行,点p执行复制

y$(y+shift4),复制光标所在位置到光标所在行的最末尾

d剪切

dd,剪切一行

d$,剪切光标所在位置到所在的结束

u撤销

ctrl+r,撤销错了,进行重做

其他 

x,单个字符进行删除,光标移动到目标字符,点x,删除该字符

r,单个字符替换,光标移动到字符,点r,输入要替换的字符即可

nG(11+shiftg),移动到第n行,如11G,移动到第11行

g,移动到第一行

G(shift+g),移动到最后一行

^(shift6),移动到光标所在行的开头

$(shift4),移动到光标所在行的结尾

:set nu,显示行号

:set nonu,取消行号

vim命令模式

文件保存

如果vim进入的,:w+保存路径和文件名,进行保存

如果vim空格文件名进入的,:w,进行保存

:!(冒号叹号),后面跟linux命令,如查看IP地址

 

/目标字符,查找目标字符,n查找下一个

:s/old/new,用new替换old,默认只针对光标所在的行进行替换

:set nohlsearch,取消高亮显示

:%s/old/new,

:%s/old/new/g,全局替换

:3,5s/old/new,在第三行到第五行之间进行替换

设置配置文件

vim /etc/vimrc

最后一行添加

set nu

设置显示行号

vim可视模式,即选中

 操作之前

 ctrl+v,进入块可视模式

此时选中的可以是上下对齐的块

可以 对块进行批量操作

shift+i,即I

插入123,

 按两次ESC

 发现整个块前面都插入了123

也可以选中想要删除的块,按d删除

猜你喜欢

转载自www.cnblogs.com/aidata/p/11896366.html