首页 > 系统相关 >Linux之VI和VIM

Linux之VI和VIM

时间:2022-12-17 16:37:28浏览次数:43  
标签:批量 VI 模式 vim 编辑 进入 Linux VIM 替换

vi,系统自带,不需要额外安装,没有vim功能多.
vim,在最小化安装的版本中默认没有,需要额外安装,vi的升级版,大部分情况都是使用vim.
[root@stu ~]# yum install -y vim
使用:直接vim+文件,文件不存在就创建
vim的模式转换
命令模式:打开后默认进入的是命令模式;
编辑模式:(插入模式),用于编辑修改文件内容;
底行模式:保存退出,搜索使用;
可视块模式:用于批量编辑;

命令模式下进入编辑模式:
按字母i即可,进入插入模式,当前光标开始
按字母o,当前光标下一行,开始进入编辑
按字母a,当前光标之后,开始进入编辑模式
按esc,退出编辑模式,进入命令模式

命令模式下,按字母r,进入替换模式,一次只能替换一个

命令模式下进入底行模式,输入:,?,/,可以实现查找,替换,查询帮助,保存退出
保存与退出,输入:进入的地方;
输入:wq,保存与退出
:q!,强制退出不保存

命令模式下进入可视化模式,v,Ctrl+v,shift+v,可以批量编辑模式

VIM快捷键
移到最后一行 G(shift+g)
移到第一行 gg
移到某一行 100gg
移到行首 ^(数字6)
移到行尾 $(数字4)

h:左
l:右
j:下
k:上

复制,删除(剪切),粘贴
复制当前行 yy
复制多行 5yy
粘贴 p
粘贴多个 3p(重复3次)
删除当前行 dd
删除多行 4dd

撤销 u
显示行号 :set nu/:set number
取消显示行号 :set nonu
搜索(默认向下查找) /你要的内容
继续向下搜索 n(next)
继续向上搜索 N

了解
搜索默认向上找 ?你要的内容
临时取消语法高亮 :noh 一般用于 /搜索错误,可以使用

案例01:删除文件1-10行开头的#
Ctrl+v,进入批量操作模式
按上下键,选择要处理的范围
如果删除按d,如果复制按y
注:
shift+v,进入可视行模式(批量操作行)
按上下键,选择要处理的范围
如果删除按d,如果复制按y

案例02,批量给文件开头增加内容
Ctrl+v,进入批量操作模式
选择要操作的区域
选完后,按shift+i(I),进入编辑模式,
写入内容
按esc等待.一会儿就写入成功了.

 

替换
:%s#原字符#被替换的字符#g
%:全文
s:替换
g:全局

第50行到100行指定替换,old换成new

:50,100s/old/new/g

标签:批量,VI,模式,vim,编辑,进入,Linux,VIM,替换
From: https://www.cnblogs.com/mclind/p/16962545.html

相关文章

  • Linux之修改主机名和IP
    修改主机名/etc/hostname主机名配置文件主机名修改建议:看到主机名就知道这个节点的作用.查看主机名[root@stu~]#cat/etc/hostnamestu85-model或者[root@web01~]#hos......
  • Linux四剑客之三grep
    补充:四剑案awksedgrepfindgrep命令过滤,在文件中,命令结果中找出你要的内容。默认按行查找;会把匹配的行显示出来;选项:-n:number显示行号;-v:排除,取反;-i:ignore过滤的时候忽......
  • Linux基础之文件属性
    文件属性,就是ll,查出来的东西,每列的意义[root@web01mclind]#ls-lhi16817447-rw-r--r--.1rootroot9012月720:141.txt16815727-rw-r--r--.1rootroot938......
  • Linux基础之命令行及快捷键
    Linux命令行分析[root@stu-linux~]#root:登录的用户名stu-linux:主机名~:表示当前目录(当前位置),如果登录后切换了目录,这个地方也会变化,比如:[root@stu85-modeletc......
  • Linux基础命令之一
    1.查看IP地址ipa=ipaddress 2.关机重启reboot:重启poweroff:关机关机重启:shutdownshutdown可以有三个参数,一个是重启,一个是关机,一个是取消,后边跟时间就可以......
  • Linux之目录
    Linux目录的所有文件,都从根/开始,倒挂的树形结构查看目录[root@stu~]#ls/bindevhomelib64mntprocrunsrvtmpvarbootetclibmediaoptro......
  • 解决k8s中service暴露的端口使用公网ip无法访问
    背景在华为云服务器上使用kk工具安装k8s+kubesphere,正常安装后无法通过公网ip+端口号的方式访问kubesphere页面(ps:华为云上的安全组已经放开)解决办法在命令行执行iptable......
  • Linux syscall clone
    clone与fork类似,都可以用来create一个新进程。与fork不同的是,clone允许子进程与父进程共享一些运行时上下文资源,包括虚拟内存空间、fdtable、signalhandlertable。函数......
  • [WIP]Unix / Linux Shell Programming
    Created:2022/12/17 ShellScripting            WhatisShell?            Us......
  • Linux备份策略(完全备份、增量备份和差异备份)
    Linux备份策略(完全备份、增量备份和差异备份)详解< 上一节下一节 >常用的备份策略有完全备份和增量备份,而增量备份有可细分为累计增量备份和差异增量备份。下面来分别......