Linux-vim使用操作大全

摘要:
vim是文本编辑工具软件,一个基于图形化编辑工具,使用简单且功能强大。增加了一些正则表达式的查找、多窗口的编辑等功能,使得Vim对于程序开发来说更加方便ps:vi内置在Linux系统中,是vim的简化版编辑器,vim需要进行安装使用2.vim的三种模式说明三种模式:命令模式,编辑模式,底行模式命令模式:Vim启动后,默认进入命令模式,在任何模式下,都可以按Esc键返回到命令模式,可以多按几次Esc键,保证顺利返回到命令模式。

1. vim简介

Vi是Vim的早期版本,现在我们使用的Vim(Viimproved)是Vi的增强版。
vim是文本编辑工具软件,一个基于图形化编辑工具,使用简单且功能强大。增加了一些正则表达式的查找、多窗口的编辑等功能,使得Vim对于程序开发来说更加方便
ps: vi 内置在Linux系统中,是vim的简化版编辑器,vim需要进行安装使用

2. vim的三种模式说明

三种模式:命令模式,编辑模式,底行模式

命令模式:

Vim 启动后,默认进入命令模式,在任何模式下,都可以按 Esc 键返回到命令模式,可以多按几次 Esc 键,保证顺利返回到命令模式。
在此模式下,可以使用上、下、左、右键进行光标移动,也可以键入不同的命令完成选择、复制、粘贴、删除等操作。

编辑模式

在编辑模式下可以编辑文本内容。在命令模式下按 i、 a 、o等键可以进入编辑模式,在此模式下可以输入文本,但命令执行后的字符插入位置不同

底行模式

命令模式下按:键进入底行模式。这时光标会移到屏幕底部,在这里可以输入相关指令保存修改或退出 Vim,也可以设置编辑环境、寻找字符串、列出行号等。指令执行后会自动返回命令模式。
Linux-vim使用操作大全第1张

3. vim编辑器操作

vim编辑器相当于Windows的notepad++编辑器,相比vi的功能强大,注意点:centos7使用vi实测调用了是vim编辑器

命令模式移动光标方式

# 纵向移动
G			# 快速移动到文本行尾
gg			# 快速移动到文本行首
2gg			# 快速移动第二行
2G			# 快速移动第二行
shitf+ 0	# 快速移动空行

# 横向移动  
$			#快速移动到一行的行尾
0 或 ^		#快速移动到一行的行首

命令模式复制内容方式

dd			# 默认剪切一行内容
2dd			# 从当前光标往下剪切2行内容
yy			# 默认复制一行内容  copy
2yy			# 从当前光标往下复制2行内容
p			# 从当前光标下黏贴一遍内容
2p			# 从当前光标下黏贴2遍内容
u			# 撤销文本的操作
ctrl+r		# 撤回文本的操作
dG			# 表示从光标位置到文本末尾内容删除
r			# 表示替换单个字符

如何命令模式进入编辑模式

i			# 表示当前光标位置前插入,进入编辑模式
a			# 表示当前光标位置后插入,进入编辑模式
o			# 表示当前光标位置另起下一行插入,进入编辑模式
O			# 表示当前光标位置另起上一行插入,进入编辑模式
I			# 表示当前光标位置所在行的行首,进入编辑模式
A			# 表示当前光标位置所在行的行尾,进入编辑模式
C(大写)		        # 表示从光标所在位置到行尾内容剪切,进入编辑模式
cc			# 表示剪切光标所在行,进入编辑模式

末行模式命令操作

:			# 从命令模式进入末行模式
:q			# 未编辑时,退出
:q!			# 强制退出vim
:wq			# w 保存内容

:set nu		        # 显示行号
:set nonu	        # 取消显示行号

/xxx		        # /表示从当前光标下搜索内容		按n 向下继续搜索 
?xxx		        # ?表示从当前光标下搜索内容		按n 向下继续搜索 

/xxxc		        # 搜索内容后加c 表示搜索忽略大小写
:set ic		        # 表示在此次编辑,搜索忽略大小写
:set noic	        # 表示在此次编辑,取消忽略大小写

ps:vim搜索内容高亮显示搜索的内容信息

如何取消vim搜索后的高亮显示?

  1. 搜索文本没有的内容信息

  2. 输入指令 :noh

3.vim特殊用法

快速的移动多行内容

格式是 :1,3move4 表示把第一行到第三行的信息移动到第四行内容另起一行
Linux-vim使用操作大全第2张

快速的复制多行内容到某一行

格式是 :1,3cpoy4 表示把第一行到第三行的信息复制单四行内容另起一行

Linux-vim使用操作大全第3张

文件信息进行替换内容

vim替换格式是 :%s# 替换的内容 # 替换成的内容 #g

如:%s#oldboy#oldgirl#g # 表示把文件中的oldboy全部替换修改为oldgirl
替换参数说明

% 表示文件的全部信息

s 表示substitute 替换 %s 表示全部信息进行替换

### 表示替换内容和修改内容的分隔符,可以是任意三个相同的符号。比如 %s/oldboy/oldgirl/g

g 表示 global(全局的),把整行符合替换条件的内容进行替换

具体操作

[root @controller /old ]# vi oldboy.txt 		# 文件原有的内容
oldboy
oldgirl
olddog
[root @controller /old ]# vi oldboy.txt 
aldbay
aldgirl
alddag
~                                                                                                                    
~                                                                                                                                                                                                                                  
:%s#o#a#g			表示把文件全部字母o替换为a	g表示把整行字母o替换为字母a

[root @controller /old ]# vi oldboy.txt 
oldbay
oldgirl
olddag
~                                                                                                                    
~                                                                                                                                                                                                                                
:%s#a#o#			表示把文件每行首个字母a替换为字母o

Linux-vim使用操作大全第4张

批量的编辑修改多行内容信息

如何快速的四行内容进行注释(在每行开始添加符号 #)

第一步:进入批量编辑的视图模式

按键盘的 Ctrl + v 进入批量模式,在底行出现标志信息 -- VISUAL BLOCK -- (可视块)

第二步:选择需要批量编辑的行:按方向上下进行选择编辑的行

第三步:进行编写内容

第四步:退出批量编辑模式,自动补全其他选择的行:按键盘的 esc 退出批量编辑模式
Linux-vim使用操作大全第5张

如何批量删除文件多行信息

第一步:进入批量编辑的视图模式

按键盘的 Ctrl + v 进入批量模式,在底行出现标志信息 -- VISUAL BLOCK -- (可视块)

第二步:选择需要批量编辑的行

按方向上下进行选择行,按方向左右选择删除信息

第三步:直接删除信息:按键盘的 字母d 或字母x 直接删除

问题:如何在test.txt每行前添加12345?

方法一:利用视图模式批量编辑文件

方法二:vim的替换信息方法

方法三:三剑客命令sed???

[root @compute /old ]# sed 's#o#12345o#' test.txt

12345oldboy

12345oldgirl

12345olddog

4.vim查看目录数据

[root @compute / ]# vim old

" ============================================================================

" Netrw Directory Listing (netrw v149)

" /old

" Sorted by name

" Sort sequence: [/]$,<core%(.d+)=>,.h$,.c$,.cpp$,~=*$,*,.o$,.obj$,.info$,.swp$,.bak$,~$

" Quick Help: :help -:go up dir D:delete R:rename s:sort-by x:exec

" ============================================================================

../

./

oldboy/

oldboy.txt*

ago.txt

services

xuanxuan.txt

.swp

~

"old" is a directory

显示信息说明: :help -:go up dir D:delete R:rename s:sort-by x:exec
F1 查看帮助

- 返回上级目录

回车 选择子目录,回车可以进入子目录。选择文件,直接编辑。

D 键盘上下选择删除文件

R 文件重命名

s 表示文件名称进行排序。默认按照文件名称排序,按一次:按照文件修改时间排序。按二次:按照文件size数据大小排序。按三次:默认名称排序

x 不明白???

免责声明:文章转载自《Linux-vim使用操作大全》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇webpack性能优化-code splituniapp 小程序实现自定义底部导航栏(tarbar)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Vim简明教程【CoolShell】

vim的学习曲线相当的大(參看各种文本编辑器的学习曲线),所以,假设你一開始看到的是一大堆VIM的命令分类,你一定会对这个编辑器失去兴趣的。以下的文章翻译自《Learn Vim Progressively》,我认为这是给新手最好的VIM的升级教程了,没有列举全部的命令,仅仅是列举了那些最实用的命令。很不错。 ————————...

apache+php+mysql配置

---------------------------------------------------- ★软件工具:(下载时注意下载相应版本,不同版本安装细节可能会有差异!!) 1>httpd-2.4.18-win64-VC14.zip下载地址:http://www.apachelounge.com/download/ 2>php-5.6.16...

Linux配置 依赖安装

基础知识: 1 OS Operation System 作用:控制硬件,服务软件 2 VMware虚拟机: 虚拟出一台计算机环境 配置两个虚拟网卡,适配器里查看 3 在虚拟机上安装操作系统Linux 4 Linux版本: 版本:内核版本,发行版本(各个公司对其优化) 5 目录介绍 root:系统管理员登录的默认目录 home:其他用户进来的默认目录 usr...

Mac 下VIM配置

Mac下VIM配置  首先,我们去这里下载MacVim,也可用这个网址:(http://code.google.com/p/macvim/),进入后的界面如下: _______________________________________________________________________ Download Download MacVim...

定时任务 Crontab命令 详解

前言 crontab是Unix和Linux用于设置周期性被执行的指令,是互联网很常用的技术,很多任务都会设置在crontab循环执行,如果不使用crontab,那么任务就是常驻程序,这对你的程序要求比较高,一个要求你的程序是24X7小时不宕机,一个是 要求你的调度程序比较可靠,实际工作中,90%的程序都没有必要花这么多时间和精力去解决上面的两个问题的,只需...

VSCode常用命令快捷键

目录 主命令框 常用快捷键 编辑器与窗口管理 代码编辑 格式调整 光标相关 重构代码 查找替换 显示相关 其他 修改默认快捷键 主命令框 F1 或 Ctrl+Shift+P : 打开命令面板。在打开的输入框内,可以输入任何命令,例如: 按一下 Backspace 会进入到 Ctrl+P 模式 在 Ctrl+P 下输入 > 可以进...