2020-03-19 14:42:04 Andya_net 阅读数 50

vim全局替换

  在linux系统中编辑文件或者配置时,常常会用到全局替换功能。

语法格式

:%s/oldWords/newWords/g
其中,oldWords为替换前的值;newWords为替换后的新值;
示例
将key1替换为key2
:%s/key1/key2/g

参数说明

  • “%”:表示全局文件,等价于"1,$"
  • “s”:表示替换操作
  • “.,$”:表示从当前行到文件尾部
  • “1, 5”:表示从第1行到第5行;
2019-09-14 12:47:22 qq_42124842 阅读数 93

vim编辑器

  1. vi 介绍
  2. vim 三种模式
  3. 命令模式
  4. 模式间的切换(重点)
  5. 末行模式
  6. 编辑模式
  7. 实用功能
  8. 扩展

1,vi 介绍

vi 编辑器 是所有unix 及 linux 系统下标准的编辑器,vim 也是 linux 的编辑器,
vim 相对来说比较高级,更适合用于 coding 编辑
vim 点是光标的移动,模式切换,删除,查找替换,复制,粘贴,撤销命令的使用

二,vim 三种模式

vim 中存在三种模式(大众认知):命令模式,编辑模式(输入模式),末行模式(尾行模式)

命令模式:在该模式下不能对文件直接编辑,可以输入快捷键进行一些操作(删除行,复制行,移动光标,粘贴等等);
编辑模式:在该模式下可以对文件的内容进行编辑;
末行模式:可以在末行输入命令来对文件进行操作(搜索,替换,退出,撤销,高亮等等);

vim 的打开文件的方式:
	#vim  文件路径		作用:打开指定文件
	#vim +数字 文件路径	作用:打开指定的文件,并且将光标移动到指定行
	#vim +/关键词 文件路径	作用:打开指定的文件,并且高亮显示关键词
	#vim 文件路径1 文件路径2 文件路径3 	作用:同时打开多个文件
	
重点:先去复制一个 /etc/passwpd 文件,复制到家目录下 
#cp /etc/passwpd -/后续一切vim 命令都是基于 /root/passwd 文件进行操作

退出方式:shift+:输入 q,回车

三,命令模式

注意:该模式是打开文件第一个看到的模式(打开文件即可进入)

1,光标移动

光标移动到行首	
按键:shift+6(T字母上的6,而不是小键盘的6)或者 ^

光标移动到行尾
按键:shift+4(R字母上的4,而不是小键盘的4) 或者 $

光标移动到首行
按键:gg

光标移动到末行
按键:G

翻屏
向上翻屏:
按键:ctrl + b  或者	 PgUp
向下翻屏:按键:ctrl + f  或者   PgDn

2,复制操作

复制光标所在行	
按键:YY

粘贴;在想要粘贴的地方
按下 p 键

以光标所在行为准,向下复制指定的行数
按键:数字 YY

可视化复制
按键:ctrl+v,然后按下 上下左右 方向键 来选中需要复制的区块,按下 yy 键进行赋值,最后按下p键粘贴

3,剪切 / 删除 操作

剪切 / 删除光标所在行
按键:dd	(删除,剪切之后 下一行上移)

注意:dd 严格意义上来说是剪切命令,但是如果剪切了不粘贴就是删除的效果

剪切/删除贯标所在行为准(包含当前行),向下删除/剪切指定的行	
按键;数字 dd

剪切/删除 光标所在的当前行,但是删除之后下一行不上移
按键:D		(删除之后当前行变成空白行)

4,撤销/恢复操作

撤销		按键: 输入 :u
恢复		按键:ctrl+r  (恢复)取消之前的撤销操作

5,扩展

扩展1:光标的快速移动快速将光标移动到指定行
按键:数字 G

以当前光标为准向上/下 移动n行
按键:数字 上 / 数字 下

以当前光标为准向左/右移动 n 字符
按键:数字 左/ 数字 右

末行模式下快速光标移动到指定行
按键:输入英文 : 数字 回车

四,模式间的切换(重点)

命令模式       (输入 :(英文))---------         末行模式 (按 1 下 ESC / 按2下 ESC / 删除末行中的全部命令)
命令模式         (按下 i,a 等)-------------    编辑模式(按 1 下 ESC)

五,末行模式

1,末行模式的进入和退出

进入方式:由命令模式进入,按下 " : "即可进入,或者 /(只用于搜索)
退出方式:a,按下 ESCb,连按2次 ESC 键c,删除末行全部输入字符

2,保存操作

输入:“:w”			保存文件输入:“:w  路径”		另存为

3,退出

输入:":q"			退出文件

4,保存并退出

输入:“:wq”		保存并退出

5,强制

输入: “:q!”		表示强制退出,刚才做的修改操作不做保存

6,调用 外部命令(了解)

输入:“:! 外部命令”

7,搜索/查找

输入:“/关键词”

例如:在passwd 文件中搜索 “sbin” 关键词
/sbin
在搜索结果中切换上/下 一个结果: 	N/n

8,取消 高亮

输入:“:nohl”

9,替换

:s/搜索的关键词/新的内容		替换光标所在行的第一处符合条件的内容
:s/搜索的关键词/新的内容/g		替换光标所在行的全部符合条件的内容
:%s/搜索的关键词/新的内容		替换整个文档中每行第一个符合条件的内容
:%s/搜索的关键词/新的内容/g		替换整个文档的符合条件的内容
%表示整个文件g表示全局(global)

10,行号的显示

显示行号	输入:“:set nu”
取消显示	输入;"set nonu"

11,扩展2:

使用vim同时打开多个文件,在末行模式下进行切换文件查看当前已经代开的文件名称,
输入" :files"切换文件的方式:a,如果需要指定切换文件的方式的名称,
则可以输入:“open 已经打开的文件名”
请按 ENTER 或其他命令继续b,
"可以通过其他命令 来切换上一个文件/下一个文件”
输入:“:bn”切换到下一个文件(back next)
输入:“:bp”切换到上一个文件(back prev)

六,编辑模式

进入方式:
i:在光标所在字符前开始插入
a:在光标所在字符后开始插入
o:在光标所在行的下面另起以新行插入
I:在光标所在行的行尾开始插入
A:在光标所在行的行尾开始插入
O:在光标所在行的上面另起一行开始插入
S:删除光标所在行并开始插入

重点看前两个 进入方式,i(insert),a(after)
退出方式:按下 esc 键

七,实用功能

1,代码着色写一段c语言代码

#touch hello.c
#vim hello.ci (进入编辑模式)
	#include<stdio.h>
	void main()
	{printf("hello world");}
	
开启/关闭显示着色
输入:“:syntax on”
输入:“:syntax off”

2,vim 中计算器的使用

文件中直接使用计算器(不需退出)
	a,进入编辑模式
	b,按下按键“ctrl+R”,输入“=‘,此时光标会变到最后行
	c,输入需要计算的内容,按下回车

八,扩展

1,vim 的配置vim 是一款编辑器,编辑器也是有配置文件的vim配置有三种情况:

a,在文件打开的时候在末行模式下输入的配置(临时的)
b,个人配置文件(/.vimrc,如果没有可以自行新建)
c,全局配置文件(vim自带,/etc/vimrc)

A,新建好个人配置文件之后进入编辑#touch .vimrc
B,在配置文件中进行配置set nu
C,配置好之后就会永远显示

问题:当个人配置与全局配置产生冲突时以谁为准?
结论:以个人配置文件为准

2,异常退出

异常退出:编辑文件之后没有正常的 输入“:wq” 进行退出
解决办法:将交换文件(编程过程中产生的临时文件,.passwd.swp)删除即可#rm -f .passwd.swp

3,别名机制

作用:相当于创建一些属于自己的自定义命令
别名机制依靠一个别名映射文件(~/.bashrc)
打开映射文件:#vim ~/.bashrc

注意:新创建的命令需要重新登录一下 才能生效

4,退出方式

回顾:在vim中退出编辑的文件需要输入“:q”,":wq"
新的方式:输入“:x”    保存退出
说明:
a,“:x”在文件没有被修改的情况下,表示直接退出,在文件修改的情况下保存并退出
b,如果文件没有被修改,但是使用wq进行退出的话,则文件的修改时间会被更新,但是如果文件没有被修改,
使用 :x 进行退出的话,文件的修改时间不会被更新
注意:输入“:X” ,大写的X,是对文件进行加密的,需要输入密码
2018-09-22 00:27:08 qq_42058590 阅读数 2098

  一.vim编辑器的介绍

在linux当中,vi编辑器对文件可以算是无所不能的了,当然对于vi的命令行中,最最最简单的命令比如: w写入,new新建,q退出,d number删除行数等等,这些最扎实的基本功我想大家都懂并且牢记于心,今天我们就来好好的讨论一下vim编辑器的查找替换功能。

二.为什么要用查找替换

首先,我举个例子,先弄一个简单的文本,如下图:

这是我随便打的一个txt文本,其中里面有着大量的tang语句,可是现在我觉得tang语句看起来不让我很舒服,想把它全部换成jia,有什么办法呢,当然要是一行一行的改的话当然可以,但是倘若这个文本有上百行这样的文字,你难道还乐意去一行一行的修改吗,接下来,我就会告诉你查找替换的具体操作了:

在vi编辑器的行末,输入这样的语句,我们分析一下,%代表的是全文,/tang代表的是我们要换掉的那个表达式,/jia是我们要换上去的那个表达式,现在我们来运行一下看看结果:

看这下是不是所有的 tang都更换成了jia呢,可是现在我看jia不爽了,想把第3行到第五行的jia改成tang,现在又应该怎么办呢,看如下代码:

 

看到结果了吗,现在完全达到我们的预期了, 当然在代码后面加上一个/g,就是对这一整行的所有符合条件的情况进行修改和替换。

三.还没完的强大的vim

当然,vim的强大功能还远远不止这么点,我会持续更新vim的深入研究。

2019-07-19 23:10:46 kuang99csdn 阅读数 40

网上关于vim编辑器的使用方法非常多了,下面只总结出了个人觉得工作当中常用的一些使用技巧。

启动VI

vi filename
如果文件存在,打开并显示内容;如果文件不存在,在第一次保存时创建新文件。

VI的三种模式:

命令模式,移动光标,修改、删除、复制、搜索
插入模式,通过aio进入,可以修改文件内容
搜索内容,通过:进入,可以退出、保存、查找替换

移动光标

  1. h,j,k,l 左下上右,或者使用方向键
  2. 单词移动 w下一个单词 b上一个单词
  3. 句子移动 (上一个句子 )下一个句子
  4. 段落移动 {上一个段落 }下一个段落

命令模式下的修改、删除、复制

Change Delete Yank(copy)
Line cc dd yy
Word cw dw yw
Letter cl dl yl

撤销操作

u 撤销最后一次的修改
ctrl+r 取消最后一次的撤销
U 撤销所有的修改

查找操作

1)/text 向后搜索
2)?text 向前搜索
3)n 搜索下一个同样的内容

粘贴操作

1)用p粘贴复制、修改或删除的数据
2)对于行,p粘贴在行上,P粘贴在行下
3)对于字符,p粘贴在字符右侧,P粘贴在字符左侧

命令模式下的一些技巧

1)dtc 删除从光标到c之间的所有字符
2)rc 将光标下的字符替换为c
3)dw 删除游标处所在的单词
4)5dd 删除5行数据
5)5yy 复制5行数据
6)5x 删除5个字符
7)R 进入替换状态,esc退出

扩展模式下的保存、退出

:w 保存
:q 退出
:wq 保存
:w! 强制保存
:q! 强制退出

文件内定位

1)G 跳转到文件的最后一行
2)1G 跳转到文件的第一行
3)ctrl d 往下滚动半屏
4)ctrl u 往上滚动半屏

屏幕定位

1)H 跳转到本屏的第一行
2)M 跳转到本屏的中间一行
3)L 跳转到本屏的最后一行
4)z+Enter 使当前的行成为屏幕显示的第一行
5)z-使当前行成为屏幕的最后一行

查找并批量替换

1)通过sed查找 ?/i/-/g
2)默认对当前行进行查找
3):1,10 对1-10行进行查找 :1,10s/i/-/g
4):1,$ 对整个文件查找 :1,$s/i/-/g

读取和保存

1):r file 将另外一个file的内容读入到当前文件
2):1,20 w file 将1-20行的内容写入到一个新的file中
3):1,$ w file 将整个文件写入一个新的file中
4):1,20 w >>file 将1-20行数据追加到file中

设置

1):set 显示常用的配置选项
2):set all 显示所有的配置选项
3):set number 设置行号

另外学习linux最有效的方法还是得有一个自己的linux环境,可以随时练习。如果手头只有一台windows电脑,嫌安装linux虚拟机太麻烦,又想多练习怎么办,推荐一个可以免费在线实践操作linux环境的网站:
https://www.shiyanlou.com/courses/1

linux-vim编辑器

阅读数 261

没有更多推荐了,返回首页