前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >linux中vi,vim操作技巧

linux中vi,vim操作技巧

作者头像
入门笔记
发布于 2022-06-02 11:15:40
发布于 2022-06-02 11:15:40
4.7K00
代码可运行
举报
文章被收录于专栏:入门小站入门小站
运行总次数:0
代码可运行

配置vim

  • /etc/vimrc配置项全局生效,对所有用户生效
  • .vimrc家目录下,只针对某个用户生效
代码语言:javascript
代码运行次数:0
运行
复制
> vim /etc/vimrc
set number     #显示行号
set autoindent #自动缩进
set nowarp     #不换行

退出vim编辑器

保存退出

使用 Vim 编辑器保存并退出编辑状态是一件轻而易举的事,你只需记住按 ESC 键切换到正常模式,然后输入冒号(:),之后输入wq即可实现保存并退出。

代码语言:javascript
代码运行次数:0
运行
复制
> vim rumenz.txt
123
:wq
直接退出

如果不想保存,则按 ESC 键切换到正常模式,然后输入冒号(:),之后输入 q! 即可。

代码语言:javascript
代码运行次数:0
运行
复制
> vim rumenz.txt
123
:q

删除一行或者多行

通过退格键(Backspace)来删除一行代码显然是太麻烦了。可以通过切换到正常模式(编辑模式下按 ESC 键)来进行操作:

  • dd:输入两次dd删除当前行。
  • 3dd:从当前行开始删除3行。
  • dG:(先输入d,然后按 shift 键输入 g)删除当前行至最后一行的所以行。

复制粘贴一块代码

你可能经常需要复制一行或一大块代码,使用 Vim 快捷键来实现此功能是非常简单的:

  • 按 Esc 切换到正常模式;
  • 把光标移到你需要复制的代码行首;
  • 按 V 选择整行,可移动光标选择多行;
  • 按 d 剪切或按 y 复制选择的代码;
  • 移动光标到你需要粘贴的位置,按 p 粘贴代码到光标后的位置,或按 P 粘贴到光标前。

撤销与重做

在使用 Vim 或其他编辑器的时候,你可能经常需要对某些修改进行撤销或重做。在 Vim 中,你可以切换到正常模式,按 u 来撤销操作,按 Ctrl+r 来重做。

代码注释

代码注释
  • 按 Ctrl+v 切换到可视化模式;
  • 移动光标(j 或 k)选中需要注释的行的开头;
  • 按大写 I,然后输入注释符,如 #;
  • 最后按 Esc。
取消注释
  • 按 Ctrl+v 切换到可视化模式;
  • 按 j 或 k 选择要删除的注释符;
  • 按 d 或 x 删除注释符

搜索

搜索在很多时候都是一个非常重要的功能。在文件中搜索一个特定的词,可以切换到正常模式,然后输入斜线/,之后跟上要搜索的词,回车即可。

代码语言:javascript
代码运行次数:0
运行
复制
> vim rumenz.txt

/rumenz

按 n 显示下一个搜索结果,按 N 显示上一个搜索结果。

把外部文件读入vim

我开始使用vim 的时候,经常会打开一个文件、复制内容、关闭文件、打开另一个文件、然后粘贴进去复制到内容。其实 Vim 中读取另一个文件的内容非常方便。切换到正常模式,然后按:read <File Name> 。使用此快捷键你不需要手动打开文件来复制内容。

代码语言:javascript
代码运行次数:0
运行
复制
> vim rumenz.txt

:read readme.md

把命令的结果读入vim

切换到正常模式,然后输入:read !command 即可把command的结果输入到vim中。

代码语言:javascript
代码运行次数:0
运行
复制
> vim rumenz.txt

:read !pwd

切换到上次修改的位置

想知道你在文件中做的最后一次修改是在什么位置?切换到正常模式,输入 g; 来即可切换到上次修改的位置。

移动到文件顶部或者尾部

切换到正常模式,输入 gg 返回文件顶部,输入 G 返回文件底部。

切换到当前行的行首或者行尾

正常模式,输入$跳到当前行的行尾。输入0跳到当前行的行首。

vim中以16进制查看文件

正常模式下,输入:%!xxd会把当前文本转换成16进制

代码语言:javascript
代码运行次数:0
运行
复制
> vim rumenz.txt
123
:%!xxd

恢复到正常模式

代码语言:javascript
代码运行次数:0
运行
复制
> vim rumenz.txt
123
:%!xxd -r

大小写敏感查找

在查找模式中加入\c表示大小写不敏感查找,\C表示大小写敏感查找

代码语言:javascript
代码运行次数:0
运行
复制
> vim rumenz.txt
123
/rumenz \c

将查找rumenz,Rumenz,RUMENZ等等

查找与替换

语法

代码语言:javascript
代码运行次数:0
运行
复制
:{作用范围}s/{目标}/{替换}/{替换标志}

例如:%s/foo/bar/g会在全局范围(%)查找foo并替换为bar,所有出现都会被替换(g)。

替换当前行
把当前行所有的rumen全部替换成rumenz
代码语言:javascript
代码运行次数:0
运行
复制
:s/rumen/rumenz/g
只把当前行第一次出现的rumen替换成rumenz
代码语言:javascript
代码运行次数:0
运行
复制
:s/rumen/rumenz/
全局替换
把所有的rumen替换成rumenz
代码语言:javascript
代码运行次数:0
运行
复制
:%s/rumen/rumenz/g
只把每一行第一次出现的rumen替换成ruemnz
代码语言:javascript
代码运行次数:0
运行
复制
:%s/rumen/rumenz/
5到10行替换
5到10行所有的rumen都替换成rumenz
代码语言:javascript
代码运行次数:0
运行
复制
:5,10s/rumen/rumenz/g
5到10行每一行第一次出现rumen的替换成rumenz
代码语言:javascript
代码运行次数:0
运行
复制
:5,10s/rumen/rumenz/
当前行与接下来3行rumen全部替换
代码语言:javascript
代码运行次数:0
运行
复制
:.,+3s/rumen/rumenz/g

每一行后面追加123

代码语言:javascript
代码运行次数:0
运行
复制
:%s/$/123/

每一行前面加#,添加注释

代码语言:javascript
代码运行次数:0
运行
复制
:%s/^/#/

删除每一行开头的#,删除注释

代码语言:javascript
代码运行次数:0
运行
复制
:%s/^#//
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-02-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 入门小站 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
vim配置即.vimrc文件的配置及vim操作技巧
1.下载vim(略)。让vi命令也可以使用vim的配置,需要修改 vi /etc/bashrc 增加如下一行内容
Twcat_tree
2022/11/30
4.2K0
Linux中vi与vim编辑操作
命令模式到编辑模式:插入命令i,附加命令a,打开命令o,修改命令c,取代命令r,替换命令s
CtrlX
2022/11/18
3.3K0
【Liunx篇】基础开发工具 - vim
 vim是一个专注的编辑器,支持多模式编辑,有命令模式,视图模式,替换模式,插入模式,底行模式。
_孙同学
2024/12/25
880
【Liunx篇】基础开发工具 - vim
vim编辑器操作汇总
VIM - Vi IMproved 7.4 编辑器操作汇总 vim   [参数]   [文件 ..]         编辑指定的文件    或: vim   [参数]    -     从标准输入(stdin)读取文本    或: vim   [参数]    -t    tag 编辑 tag 定义处的文件    或: vim   [参数]    -q   [errorfile] 编辑第一个出错处的文件 参数:   --  在这以后只有文件名   -v Vi 模式
汪凡
2018/05/29
1.5K0
这可能是最全最实用的Vim操作集合
Vim 作为已经 29 岁(1991.11.2)的老牌文本编辑器,比“名名”年龄还大,在2019年 StackOverflow 的统计数据中仍然排在了总榜第五名,占据了25.4%的“市场”。Vim 不同于其他编辑器或者 IDE,它被称作“编辑器之神”,它小巧、启动极快、可运行在任何主流系统上、各种快捷操作、所有 Unix 或类 Unix 系统都预装了 Vi 或 Vim,而且很多编辑器、IDE 都提供 Vim 插件,学会了 Vim 可以一套快捷键走遍天下,而且可以和其他编辑器实现优势互补,编辑用 Vim,项目结构、文件结构、长得好看等用其他编辑器。Vim 学习一开始较难,一旦上手,就如神兵利器解封,助你在文本编辑披荆斩棘。
别打名名
2020/07/29
2.2K0
这可能是最全最实用的Vim操作集合
Linux学习笔记(一)使用文本编辑器Vim
从今天开始,小雨和大家一起学习Linux基础,Vim是Linux中功能十分强大的文本编辑器,熟练地使用Vim可以让你高效地在Shell界面编写代码,接下来我们开始一步一步地学习Vim的使用方法:
小雨coding
2020/06/09
2.3K0
Linux学习笔记(一)使用文本编辑器Vim
138 条 Vim 命令、操作、快捷键全集
作者:perlman 命令历史 以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令。 启动vim 在命令行窗口中输入以下命令即可 vim 直接启动vim vim filename 打开vim并创建名为filename的文件 文件命令 打开单个文件 vim file 同时打开多个文件 vim file1 file2 file3 ... 在vim窗口中打开一个新文件 :open file 在新窗口中打开文件 :split file 切换到下一个文件 :bn 切换到上一个文件 :
小小科
2018/06/20
1.4K0
Linux之vi和vim编辑器
|--- vim [file1 file2 file3 ...]|打开单个或多个文件 :open file|在vim窗口中打开一个新文件 :split file|在新窗口中打开文件(split打开的窗口都是横向的,使用vsplit可以纵向打开窗口。) Ctrl+ww| 移动到下一个窗口 Ctrl+wj |移动到下方的窗口 Ctrl+wk |移动到上方的窗口 :close |最后一个窗口不能使用此命令,可以防止意外退出vim。 :only|关闭所有窗口,只保留当前窗口 :bn|切换到下一个文件 :bp|切换到上一个文件 :args|查看当前打开的文件列表,当前正在编辑的文件会用[]括起来 :e ftp://192.168.10.76/abc.txt| 打开远程文件,比如ftp或者share folder
yuanshuai
2022/08/22
2.1K0
玩转vim(vi)编辑器
vi编辑器是Linux下的标准编辑器,vi编辑器并非只是用来写程序,还可以用来对一些配置文件进行编辑。vim是vi的加强版,我们一般使用vim对文件进行编辑。本文介绍了vim编辑器的三大模式,以及相应的命令,最后介绍了如何通过vim编辑器的配置文件.vimrc根据自己的需求对vim进行配置。
mindtechnist
2024/08/08
9250
玩转vim(vi)编辑器
Vim 新手节省时间的 10 多个小技巧
Vim 是很多开发者的首选编辑器,通过设置正确的命令和快捷方式,它可以帮你更快的完成工作。这篇文章我们为 Vim 新手提供一些快捷键等方面的小技巧,帮你提升工作效率。 1. 配置 .vimrc 当我最初使用 vim 的时候,我浪费了好多时间来缩进代码,我不知道通过修改 Vim 的 .vimrc 配置文件来实现代码缩进、语法高亮、显示行号等功能。 在你的 Home 目录下创建一个 .vimrc 文件,添加下面的代码来设置行号、代码缩进等。 set number # 显示行号 set a
小小科
2018/05/03
8590
vim 文本编辑器[通俗易懂]
1) 模式转换 a) 【i】:在当前光标所在字符的前面,转为输入模式 b) 【a】:在当前光标所在字符的后面,转换为输入模式 c) 【o】:在当前光标所在行的下方,新建一行,并转换为输入模式: d) 【I】:在当前光标所在行的行首,转换为输入模式 e) 【A】:在当前光标所在行的行尾,转换为输入模式 f) 【O】:在当前光标所在行的上方,新建一行,并转换为输入模式; g) 【cc】删除当前行并输入新内容,相当于S。扩展【#cc】 h) 【C】删除当前光标到行尾,并切换成插入模式
全栈程序员站长
2022/09/06
4.4K0
vim 文本编辑器[通俗易懂]
你会使用Linux编辑器vim吗?
首先我们先理清楚一个概念:编辑器和编译器和调试器! ⭐️vim:是一款编辑器,只负责写代码;相当于 windows 的记事本; ⭐️gcc:是一款编译器,只负责程序的翻译; ⭐️gdb:是一款调试器,只负责程序的调试 而在我们在用 VS 写 C 代码的时候,这些是全都在 VS 编译器上实现的;因为 VS 是集成开发环境! 1. vim 的使用学习 1.1 vim 简介: vim 是一个功能强大的多模式编辑器, 是 Linux/UNIX 上最常用的文本编辑器, 它的作用是建立、编辑、显示文本文件。Vim 没有
入门笔记
2022/06/03
8040
你会使用Linux编辑器vim吗?
linux 之 vi,vim 命令
原文链接:https://rumenz.com/rumenbiji/linux-vi-vim.html
入门笔记
2021/10/11
7.3K0
vi与vim的区别以及常用命令
vi编辑器只能运行于unix中,而vim不仅可以运行于unix,还可用于windows、mac等多操作平台。
挨踢小子部落阁
2020/03/25
2.7K0
第004课 vi编辑器的使用详解
为了更方便的使用vi编辑器,我们需要先对vi编辑器进行一些配置。打开虚拟机终端,输入以下命令:
韦东山
2020/09/30
7200
第004课 vi编辑器的使用详解
一天一个 Linux 命令(1):vim 命令
本文为joshua317原创文章,转载请注明:转载自joshua317博客 https://www.joshua317.com/article/77
joshua317
2021/09/08
8840
学会这21条,你离Vim大神就不远了
导语:作者本人是 Vim 的重度使用者,就因为喜欢上这种双手不离键盘就可以操控一切的feel,Vim 可以让人对文本的操作更加精准、高效。对于未使用过 Vim 的朋友来说,可能还无法体会到这种感觉。由于使用 Vim 有一定的学习成本,只有做到非常熟练的程度才能感受到它带来的快捷。
AI科技大本营
2019/08/20
1.8K0
学会这21条,你离Vim大神就不远了
超详细vim操作解析
vim详细操作解析 使用#yum install -y vim-enhanced 来安装vim服务 一般模式下移动光标 image.png Ctrl+b 往前移动翻页; Ctrl+f 往后移动翻页; 0(数字)/shift + 6 快速定位到行首; shift + 4 快速定位到行末 ---- 一般模式下复制粘贴 image.png dd:剪切当前行 小写的p:黏贴在本行下面 大写的P:黏贴在本行上面 u:一次恢复一个操作 5dd:剪切当前行至5行 p:黏贴 5yy:复制当前行至5行 p:黏贴 v:
老七Linux
2018/05/09
1.5K0
超详细vim操作解析
【Vim 核心攻略】 —— 文本编辑高手的进阶秘籍
Vim 是一种强大且高度可定制的文本编辑器,广泛用于软件开发、系统管理和各种文本处理任务。它基于更早期的编辑器 Vi,并对其进行了扩展,因此也被称为 “Vi Improved”(Vi 的增强版)。Vim 的特点是快捷键驱动、支持多模式编辑以及可扩展性强。
换一颗红豆
2024/12/23
2500
【Vim 核心攻略】 —— 文本编辑高手的进阶秘籍
【linux】vim
Vim是一款高度配置化的文本编辑器,用于创建和编辑任何类型的文本,包括程序代码。它是从“vi”文本编辑器演变而来,增加了一些新功能和改进,包括插件系统、语法高亮、代码折叠、更好的搜索功能等。Vim是一款自由和开源的软件,遵循Vim许可证(它是一种类似于GPL许可证的自由软件许可证)。
用户11029103
2024/07/25
4830
【linux】vim
相关推荐
vim配置即.vimrc文件的配置及vim操作技巧
更多 >
目录
  • 配置vim
  • 退出vim编辑器
    • 保存退出
    • 直接退出
  • 删除一行或者多行
  • 复制粘贴一块代码
  • 撤销与重做
  • 代码注释
    • 代码注释
    • 取消注释
  • 搜索
  • 把外部文件读入vim
  • 把命令的结果读入vim
  • 切换到上次修改的位置
  • 移动到文件顶部或者尾部
  • 切换到当前行的行首或者行尾
  • vim中以16进制查看文件
  • 大小写敏感查找
  • 查找与替换
    • 替换当前行
      • 把当前行所有的rumen全部替换成rumenz
      • 只把当前行第一次出现的rumen替换成rumenz
    • 全局替换
      • 把所有的rumen替换成rumenz
      • 只把每一行第一次出现的rumen替换成ruemnz
    • 5到10行替换
      • 5到10行所有的rumen都替换成rumenz
      • 5到10行每一行第一次出现rumen的替换成rumenz
    • 当前行与接下来3行rumen全部替换
  • 每一行后面追加123
  • 每一行前面加#,添加注释
  • 删除每一行开头的#,删除注释
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档