IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Linux vi和vim文本编辑器 -> 正文阅读

[系统运维]Linux vi和vim文本编辑器

vi和vim的使用

  1. vi 文件名 :如果文件存在,就直接打开文件,光标显示在第一行,如果文件不存在,就会新建一个文件,但还未保存,需通过命令保存。
  2. vi 文件名 +行数:打开文件跳转到指定行数。
  3. vi 文件名 + :打开文件将光标跳转到内容的末尾。

注意: 在使用vi和vim时,如果编辑的文件在中断被强行退出了,在打开文件时,必须删除当前隐藏的交换文件,删除交换文件使用英文字母D。

vi的三种基本模式

命令模式

  命令模式是打开文件的入口命令,可以对文件进行常规操作,如光标定位,翻页
  ,复制,粘贴,删除等。

末行模式

 末行模式是执行保存退出等操作,如果从命令模式下切换到末行模式,需使用:符号切换,
 如果在输入wq+回车就退出保存文件,如果要在转回命令模式,只需要按Esc键就可以。

编辑模式

 编辑模式主要是编辑文本内容,如果要从命令模式下切换到编辑模式下输入字母i即可,
 在转回命令模式下按Esc即可。

图释:
在这里插入图片描述
注意:

在末行模式中,如果没保存(w),直接退出(q),就会提示是否强制执行,在q后面添加!就会强制性退出,但编辑的内容没有被保存。

:x=:wq (两者等价,保存并退出)

命令模式下的操作

上下移动

  • H ->向左移动
  • J ->向下移动
  • K ->向上移动
  • L ->向右移动

行内移动

  • w ->向后移动一个单词
  • b ->向前移动一个单词
  • 0(零) ->跳到行首(包含空格)
  • ^ ->跳到行首(不包含空格)
  • $ ->跳到行尾

行数移动

  • gg ->跳到文件顶部
  • G ->跳到文件末尾
  • 数字gg ->移动到对应的第多少行
  • 数字G -> 同上
  • :数字 ->同上

屏幕移动

  • ctrl+b ->向上翻页
  • ctrl+f ->向下翻页
  • H ->屏幕顶部
  • M -> 屏幕中间
  • L -> 屏幕底部

段落移动

vim主要以空行区分段落

  • { ->表示上一段落
  • } ->表示下一段落

括号切换

% 用于在成对的括号之间相互切换,例如 {} ,[],()等。

标记

标记是参照其他行的代码修改处理的小技巧,如果不清楚怎么修改,则可以在要修改的地方使用 m+字母 的形式标记,字母大小写不固定。在使用 `字母 跳转回来,跳转回来的字母必须与标记的字母相同。

注意:

  1. 如果将添加标记的行删除,则标记也会删除。
  2. 标记不能重复,否则前一次的标记会消失。

选中文本(可视模式)

用于选中文本,方便再使用其他命令进行删除,复制等操作。

  1. (小写)v -> 可视模式,从光标开始按照正常模式选择文本。
  2. (大写)V -> 可视行模式,选中光标经过的完整一行。
  3. Ctrl+v -> 可视块模式,垂直方向选中文本。

选中文本可以配合移动命令使用,例如 : ggvG选中所有文本

撤销和恢复撤销

  1. u ->撤销上次命令
  2. Ctrl+r ->恢复刚撤销的命令

删除文本

  1. x -> 删除光标所在的字符或者选中的文本。
  2. d+移动命令 ->删除与移动命令对应的文本
  3. dd ->删除光标所在行。
  4. D -> 从光标开始删除到行尾

复制和粘贴

vi是利用文本缓冲区对其进行复制,粘贴,删除等操作

  1. y+移动命令 ->复制
  2. yy ->复制一行,数字+yy表示复制多行
  3. p ->粘贴,数字+p表示粘贴多少行

如果再其他文件中复制文本到另一个文本中粘贴时,不能使用y和p,必须使用鼠标右击复制和粘贴等。

替换命令

  1. r ->替换当前字符,连续输入连续替换
  2. R -> 替换当前光标后的字符,连续输入连续替换

缩进

  1. >> ->向右缩进
  2. << ->向左缩进
  3. . 重复上次执行命令

查找

普通查找: /查找内容 查找指定内容之后,按n键可以向下查找;按N键可以向上查找。

单词快速查找:

  1. * 向后查找当前光标所在单词。
  2. # 向前查找当前光标所在单词。

如果不想再显示高亮,则可以查找文本中没有的内容,即可取消高亮。

查找与替换

查找与替换必须再末行模式中使用。

  1. 全局替换: :%$/旧文本/新文本/g

  2. 可视区域替换:首先切换到可视模式,选中文本esc退出到命令模式下,在使用 :S/旧文本/新文本/g 即可。

  3. 确认替换:会给有提示,:%s/旧文本/新文本/gc

    1. y :替换
    2. n:不替换
    3. a:替换所有
    4. q:退出替换
    5. l:最后一个替换
    6. ^E:向下滚屏
    7. ^Y:向上滚屏

插入命令

插入命令可以直接进入编辑模式

  1. 小写i:在当前字符前插入文本。
  2. 大写I:在行首插入文本。
  3. a:在当前字符后插入文本。
  4. A:在行末插入文本
  5. 小写o:在当前行后插入一空行
  6. 大写O:在当前行前插入一空行
  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-09-20 16:05:36  更:2021-09-20 16:06:53 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 15:50:40-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码