『学了就忘』vim编辑器基础 — 96、末行模式中的相关命令
vim
编辑器中常用的末行模式命令。
1、在文档中显示行号
: set nu
:显示行号。: set nonu
:取消行号。
一旦退出文档,再打开行号就没有了。(文章最后第8点,有解决。)
2、是否显示文档内容相关颜色
: syntax on
:显示颜色。: syntax off
:关闭颜色。
说明:
是否依据语法显示相关的颜色帮助。在
vim
中修改相关的配置文件或Shell脚本文件时(如前面示例的脚本/etc/init.d/sshad
),默认会显示相应的颜色,用来帮助排错。如果觉得颜色产生了干扰,则可以取消此设置。
3、是否将查找的字符串高亮显示
设置是否将查找的字符串高亮显示。默认是set hlsearch
高亮显示。
: set hisearch
:高亮显示。: set nohlsearch
:不高亮显示。
注意:
当你在命令模式的时候,输入
/
进入末行模式搜索关键字的时候,如果搜索到匹配的内容,关键字会自动高亮显示。你关闭文件,再进入文件后,之前被搜索的关键字依旧被高亮显示。你再打开其他的文件,如果该文件也有之前搜索的关键字,依然会被高亮显示。
我们可以用: set nohlsearch
取消高亮,在set hisearch
开启来解决一直高亮的问题。但是我们一般不这样用,我们通常输入/
进入末行模式,胡乱打一个确保没有的关键字,这样高亮的信息就关闭了。
4、是否显示右下角的状态栏
设置是否显示右下角的状态栏。默认是set ruler
显示。
如下图所示:
: set ruler
:显示。: set noruler
:不显示。
提示:
14,8
表示,光标在当前文档的第14行,第8个字符上。
5、是否在左下角显示如"--INSERT--"之类的状态栏
设置是否在左下角显示如--INSERT--
之类的状态栏。默认是set showmode
显示。
: set showmode
:开启显示。: set noshowmode
:关闭显示。
一般都开始显示。
6、是否显示隐藏字符
设置是否显示隐藏字符(Tab键用^I
表示,回车符用$
表示)。
默认是nolist
。如果使用set list
显示隐藏字符,类似cat -A 文件名
。
: set list
:显示隐藏字符。: set nolist
:不显示隐藏字符。
补充:
Windows系统下的回车符在Linux系统中是用
^M$
符号显示,而不是用Linux系统的回车符$
显示。这样会导致Windows系统下编辑的程序脚本,无法在Linux系统中执行。这时可以通过命令dos2unix
,把Windows格式转为Linux格式,当然反过来unix2dos
命令就是把Linux格式转为Windows格式。这两个命令默认没有安装,需要手工安装才能使用。
提示:
如果文档是在Windows系统中编辑的,在Linux系统中用
vim
编辑器打开,vim
编辑器会自动把回车符这样的隐藏符号转换过来。
7、vim支持更多的设置参数
可以通过:set all
进行查看。
8、vim编辑器配置文件
大家会发现,这些设置参数都只是临时生效,一旦关闭文件再打开,又需要重新输入。如果想要永久生效,需要手工建立vim
的配置文件~/.vimrc
(在家目录下创建一个.vimrc
文件,既然在家目录,说明只对用户个人有用),把你需要的参数写入配置文件就永久生效了。
执行如下命令:[root@localhost ~]# vim .vimrc
然后在文件内输入:
set nu
syntax off
set hisearch
set ruler
set showmode
set list
等等。。。。。。
保存即可,之后在打开任何文件,都自动生效。
9、查找
/查找内容
:从光标所在行向下查找。?查找内容
:从光标所在行向上搜索。n
:下一个。N
:上一个。
10、替换
:1,10s/old/new/g
:替换1到10行的所有old
为new
。
注:1,10s
表示第一行到第十行,s
代表替换。/old/new
表示把old
换成new
。g
表示范围内替换所有。(如果不加g
,只会替换范围内第一个old
)
:%s/old/new/g
:替换整个文件的old
为new
。
%
表示范围是整篇文档。
替换字符串,举几个例子:
- 在shell中
#
开头是注释,那我是否可以注释文件的前10行呢?手工一个一个注释很麻烦,如何进行批量替换。
:1,10s/^/#/g
:注释1到10行。
提示:^
正则表达式表示行首,把行首变成#
。
:1,10s/^#//g
:取消注释。
提示:^#
意思是把行首的#去掉。正则表达式是包含匹配,如果只写#
,表示1到10行所有的#
都去掉。 - 在C语言,PHP语言等大多数语言中,是使用
//
开头作为注释的,用vim
来写这些程序语言脚本,如何批量加入//
注释。
:1,10s/^/\/\//g
:1到10行,行首加入//
。
提示:把行首^
替换成\/\/
(双斜杠//
),\
符号在命令行中代表换行,\
符号在字符串中代表转义符。(转义符就是把有特殊含义的字符转换成普通的字符串符号。)
:1,10s/^\/\///g
:取消1到10行行首的//
。
提示:绝大多数的替换都用最上边的两种替换,下边的两个例子比较特殊,以后用到照着写就好。
『学了就忘』vim编辑器基础 — 96、末行模式中的相关命令的更多相关文章
- 『学了就忘』vim编辑器基础 — 97、vim使用技巧
目录 1.在vim中导入其他文件内容或命令结果 (1)导入其他文件内容 (2)在vim中执行系统命令 (3)导入命令结果 2.设定快捷键 3.字符替换 4.多文件打开 vim使用技巧,就是vim编辑器 ...
- 『学了就忘』vim编辑器基础 — 94、vim编辑器介绍
目录 1.vim编辑器简介 2.vim的工作模式 (1)命令模式 (2)输入模式 (3)最后行模式(末行模式) 1.vim编辑器简介 vim是一个全屏幕纯文本(绘个表格或者插个图片就不要想了)编辑器, ...
- 『学了就忘』vim编辑器基础 — 95、命令模式中的相关命令
目录 1.移动光标操作 2.删除或剪切操作 3.复制操作 4.撤销操作 5.替换操作 6.补充一个知识点 命令模式中的命令主要取代的是Linux系统中鼠标的操作. vim编辑器的快捷键一般都集中在命令 ...
- 『学了就忘』Linux服务管理 — 75、Linux系统中的服务
目录 1.服务的介绍 2.Windows系统中的服务 3.Linux系统中服务的分类 4.独立的服务和基于xinetd服务的区别 5.如何查看一个服务是独立的服务还是基于xinetd的服务 (1)查看 ...
- 『学了就忘』Linux用户管理 — 52、用户组管理相关命令
目录 1.添加用户组 2.删除用户组 3.把用户添加进组或从组中删除 4.有效组(了解) 1.添加用户组 添加用户组的命令是groupadd. 命令格式如下: [root@localhost ~]# ...
- 『学了就忘』Linux权限管理 — 54、sudo授权
目录 1.什么是sudo授权 2. sudo授权说明 3.sudo命令的使用 示例1 示例2 示例3 1.什么是sudo授权 在Linux系统中,/sbin/和/usr/sbin/两个目录中的命令只有 ...
- 『学了就忘』Linux权限管理 — 56、不可改变位权限(chattr)
目录 1.命令格式 2.查看文件系统属性chattr权限 3.示例 文件系统属性chattr权限,也叫不可改变位权限,该权限没有风险,但是他能限制root用户. 1.命令格式 [root@localh ...
- 『学了就忘』Linux文件系统管理 — 64、磁盘配额的配置步骤
目录 1.手工建立一个5GB的分区 2.建立需要做限制的三个用户 3.在分区上开启磁盘配额功能 4.建立磁盘配额的配置文件 5.开始设置用户和组的配额限制 6.启动和关闭配额 7.磁盘配额的查询 8. ...
- 『学了就忘』Linux系统定时任务 — 89、任务调度工具anacron
目录 1.任务调度工具anacron介绍 2.新旧版本Linux中anacron工具的区别 3./etc/cron.{daily,weekly,monthly}目录说明 4.anacron命令 5./ ...
随机推荐
- 截取字符串、拼接字符串【c#】
string compname="1与3"; String[] name = compname.Split('与'); string namer=name[0]; namer=1 ...
- Hadoop入门 完全分布式运行模式-准备
目录 Hadoop运行环境 完全分布式运行模式(重点) scp secure copy 安全拷贝 1 hadoop102上的JDK文件推给103 2 hadoop103从102上拉取Hadoop文件 ...
- Hive(六)【分区表、分桶表】
目录 一.分区表 1.本质 2.创建分区表 3.加载数据到分区表 4.查看分区 5.增加分区 6.删除分区 7.二级分区 8.分区表和元数据对应得三种方式 9.动态分区 二.分桶表 1.创建分桶表 2 ...
- MySQL压力测试工具
一.MySQL自带的压力测试工具--Mysqlslap mysqlslap是mysql自带的基准测试工具,该工具查询数据,语法简单,灵活容易使用.该工具可以模拟多个客户端同时并发的向服务器发出查询更新 ...
- sonic 安装记录
https://github.com/valeriansaliou/sonic $ rustc --versionrustc 1.50.0-dev ubantu环境 rocksdb 安装依赖 apt ...
- Hibernate 总结(转)
JMX:Java Management Extensions.JCA: J2EE Contector ArchitectureJNDI: Java Namind and Directory Inter ...
- Spring Boot中使用模板引擎Thymeleaf
一.Thymeleaf简介 Thymeleaf[taɪm lif],百里香叶,是一个流行的模板引擎,该模板引擎采用Java语言开发.Java中常见的模板引擎有Velocity.Freemaker.Th ...
- 【Linux】【Services】【SaaS】Docker+kubernetes(9. 安装consul实现服务注册发现)
1. 简介 1.1. 官方网站: https://www.consul.io 1.2. Consul的功能: 服务发现:通过DNS或HTTP接口使得消费者发现服务,应用程序可以轻松找到所依赖的服务. ...
- 使用递归方法,遍历输出以.java结尾的文件
package cn.itcast.demo01;import java.io.File;/** * @author newcityman * @date 2019/7/27 - 19:17 * 题目 ...
- 【力扣】有序矩阵中第K小的元素
给定一个 n x n 矩阵,其中每行和每列元素均按升序排序,找到矩阵中第 k 小的元素.请注意,它是排序后的第 k 小元素,而不是第 k 个不同的元素. 示例: matrix = [ [ 1, 5, ...