Linux必杀(十八):VI、VIM编辑器

2023-10-27

题记:

基本上VI共分为3种模式,分别是一般模式,命令行模式和编辑模式。

一、一般模式
以Vi打开一个文件就直接进入一般模式了。在这个模式下,可以使用上下左右按键来移动光标,可以删除字符或删除整行,也可以复制、粘贴文件数据。

二、编辑模式
在一般模式中可以进行删除、复制、粘贴等操作,但是却无法编辑文件内容。
按下“i,I,o,O,a,A,r,R”等任何一个字母后才会进入编辑模式。按下后,通常在下方会出现INSERT或者REPLACE的字样,此时才能进入编辑模式。

三、命令行模式
在一般模式中,按下“:、/、?” 三个中的任何一个按钮,就可以将光标移动到最下面那一行。在这个模式中,可以提供你查找数据的操作。
读取、保存、大量替换字符、离开VI,显示行号等的操作则是在此模式中完成的。

四、简单执行范例
1。使用vi新建一个test.txt的文件

wd@wd:~$ sudo su
[sudo] wd 的密码: 
root@wd:/home/wd# cd ~
root@wd:~# vi test.txt
root@wd:~# 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux必杀(十八):VI、VIM编辑器 的相关文章

  • 如何使用 vim 作为“git log”编辑器?

    当我跑步时git log 编辑器到底是什么git log正在使用 Also 无论如何我可以使用吗vim作为我的默认编辑器git log 如果我想搜索 git 日志 最好的方法是什么 现在我正在做类似的事情 git log grep bla
  • 用于编辑 /etc/sudoers 文件的正则表达式模式

    我想删除 etc sudoers 文件中的 uncommnet 轮组 那么我应该使用什么正则表达式模式 cat etc sudoers Allows members of the sys group to run networking so
  • 未找到 Gem 命令

    我已经在 Ubuntu 10 10 32 位上安装了 gem apt get install gem y 但当我尝试跑步时 gem install something gem 我收到未找到命令的错误 bash gem command not
  • 使用 gcc 理解共享库

    我试图理解 C 中共享库的以下行为 机器一 cat one c include
  • 如何设置Java线程的CPU核心亲和力?

    我搜索了以前关于类似主题的帖子 但找不到合适的答案 因此提出这个问题 非常感谢您帮助回答 我知道在 Linux 中通过任务集命令设置进程与特定 CPU 核心的关联性 但我想设置 Java 线程与特定 cpu 核心的亲和力 以便属于同一进程的
  • 如何在 Linux 中重新添加 unicode 字节顺序标记?

    我有一个相当大的 SQL 文件 它以 FFFE 的字节顺序标记开头 我使用 unicode 感知的 linux 分割工具将此文件分割成 100 000 行块 但是当将这些传递回窗口时 它确实not与第一个部分以外的任何部分一样 只是它具有
  • ubuntu 的 CSS 更少(并且自动编译)? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我尝试过 simples 但现在 l
  • 如何在 Linux/OS X 上温和地终止 Firefox 进程

    我正在使用 Firefox 进行一些自动化操作 尽管我可以从 shell 打开 Firefox 窗口 但我无法正确终止它 如果我kill火狐进程与kill 3 or kill 2当我下次打开新的 Firefox 窗口时 命令会询问我是否要在
  • SMP 上如何处理中断?

    SMP 对称多处理器 多核 机器上如何处理中断 内存管理单元是只有一个还是多个 假设两个线程 A 和 B 运行在不同的内核上 同时 访问页表中不存在的内存页面 在这种情况下 将会出现页面错误 并从内存中引入新页面 将会发生的事件的顺序是什么
  • 如何在 vim 中覆盖 ~/.vim 和 ~/.vimrc 路径(但不能覆盖其他路径)?

    假设我有一个所有 vim 配置的 tarball 通常在 vim 中的所有内容 插件 自动加载 颜色 所有这些东西 和一个 vimrc 文件 我将其提取到某个目录中 所以在我所在的目录 PWD 中 有一个 vim 文件夹和一个 vimrc
  • 如何在perl中使用O_ASYNC和fcntl?

    我想使用 O ASYNC 选项 当管道可以读取时 SIGIO 的处理程序将运行 但以下代码不起作用 任何人都可以帮助我吗 bin env perl use Fcntl SIG IO sub print catch SIGIO n my fl
  • 完整的 C++ i18n gettext()“hello world”示例

    我正在寻找完整的 i18ngettext 你好世界的例子 我已经开始了一个基于的脚本使用 GNU gettext 的本机语言支持教程 https web archive org web 20130330233819 http oriya s
  • 如何在文件夹中的 xml 文件中 grep 一个单词

    我知道我可以使用 grep 在这样的文件夹中的所有文件中查找单词 grep rn core 但我当前的目录有很多子目录 我只想搜索当前目录及其所有子目录中存在的所有 xml 文件 我怎样才能做到这一点 我试过这个 grep rn core
  • 比较linux中的两个未排序列表,列出第二个文件中的唯一项

    我有 2 个包含号码列表 电话号码 的文件 我正在寻找一种列出第二个文件中第一个文件中不存在的数字的方法 我尝试过各种方法 comm getting some weird sorting errors fgrep v x f second
  • 如何设置打开文件时默认展开?

    In my vimrc我已经把set foldmethod syntax启用方法折叠等 但是 我不喜欢每次打开文件时都会折叠整个文件的默认设置 有没有办法启用foldmethod 但是当我打开文件时文件是否展开了 set foldlevel
  • 了解 Linux oom-killer 日志

    我的应用程序被 oom killer 杀死了 它是在实时 USB 上运行的 Ubuntu 11 10 无需交换 PC 具有 1 Gig 的 RAM 唯一运行的应用程序 除了所有内置的 Ubuntu 东西 是我的程序 flasherav 请注
  • pthread_self() 返回的线程 ID 与调用 gettid(2) 返回的内核线程 ID 不同

    这句话来自于pthread self 的手册页 http linux die net man 3 pthread self 那么 我应该根据什么来决定是否应该使用pthread self or gettid确定哪个线程正在运行该函数 两者都
  • 如何在linux中使用iptables将http和https流量转发到透明代理[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 这个问题似乎不是关于主要由程序员使用的特定编程问题 软件算法或软件工具 help on topic 如果您认为该问题与主题相关另一个 St
  • 在用户程序中使用 或在驱动程序模块代码中使用 ...这有关系吗?

    我正在开发一个设备驱动程序模块和关联的用户库来处理ioctl 来电 该库获取相关信息并将其放入一个结构中 该结构被传递到驱动程序模块中并在那里解压 然后进行处理 我省略了很多步骤 但这就是总体思路 一些数据通过结构体传递ioctl is u
  • 在 Archlinux 上使用 Vim 作为 Haskell 的 IDE 目前情况如何?

    如果可行的话 我的目标是通过 YouCompleteMe 在 Vim 中完成 Haskell 的命令 在这方面 正如您在下面看到的 我还没有找到关于如何让它发挥作用的共识 相关评论的最新评论YouCompleteMe 上的问题 https

随机推荐

  • 【QT开发笔记-基础篇】

    本节对应的视频讲解 B 站 链 接 QT开发笔记 基础篇 第二章 常用控件 2 12 表格控件 QTableWidget 1 QTableWidget 是 Qt 中的表格控件 可以行列的形式来展示数据 1 属性和方法 QTableWidge
  • 白话操作系统1.1 - CPU - virtualization - 虚拟

    1 桃子之影分身 three easy pieces操作系统一书中 教授谈起了分桃子的事情 说实际只有一个桃子 但却要分给很多猴子 那么问题来了 如何让每个猴子都能开开心心的分到桃呢 其实就是用一些手段啊 捏造出虚拟的桃子 虚拟的东西嘛 可
  • ECharts的讲解

    目录 什么是数据可视化 ECharts的介绍 ECharts的特点 ECharts的基本使用 操作步骤 通用配置title的相关配置 通用配置tooltip的相关配置 触发类型 trigger 触发时机 triggerOn 格式化 form
  • python 概率分布_Python中的联合概率分布

    要通过numpy中的m矩阵生成 可以将两个适当形状的数组相乘 如果数组x是1的n 而数组y是 则它们的乘积x y将是n 由m 在 下面是一个例子 说明如何用最初是一维的数据来处理这个问题 我使用随机值 如果是概率分布的话 应该对其进行规范化
  • 用Hexo制作自己的静态博客

    博客是一个老东西了 如果我们想写博客的话 有两种选择 第一种是在博客网站上 例如QQ空间 新浪博客 简书等网站上申请账号 然后编写博客 第二种就是自己找服务器搭一个博客 搭建博客也有两种选择 第一种是搭建动态博客 这方面最流行的就是Word
  • C++之五种排序方法总结

    模板函数sort sort是一个模板函数 sort 括号里可以接受两个或三个参数 这里先说一下两个参数的 因为三个参数的还没研究好 哈哈 使用sort 时需要添加头文件
  • 修改mysql的字符集和默认存储引擎

    author skate time 2012 05 18 修改mysql的字符集和默认存储引擎 1 修改mysql的字符集 mysql库现有字符集 mysql gt show variables like character Variabl
  • 多表的 inner join与left join;

    当前情况 目前有三个表 关系如下 1 sc表 有 student id class id 2 student表 有student id student name 3 class表 有class id class name class add
  • vue3+vite+ts项目配置开发环境和生产环境 打包命令配置

    开发环境和生产环境的配置和打包方式有所不同 下面是基于vue3 vite ts项目的开发环境和生产环境配置及打包方式的详细说明 开发环境配置 开发环境的配置主要是为了方便开发者进行调试和测试 以下是开发环境的配置步骤 1 1 安装依赖 首先
  • 51单片机“独立按键”控制静态数码管———显示数字0-9

    51单片机 独立按键 控制静态数码管学习总结 一 按键功能实现总结 独立按键 电路图解析及接线 二 程序编译与控制静态数码管显示1 2 0 9 的效果展示 三 按键程序逻辑设计与程序编译 四 程序烧录与保存 一 按键功能实现总结 独立按键
  • python 绘制两组数据的分布图

    可以使用 Python 中的 Matplotlib 库来绘制两组数据的分布图 下面是一个简单的示例代码 import matplotlib pyplot as plt 假设有两组数据 分别是 x 和 y x 1 2 3 4 5 y 2 4
  • JAVA用线程池模拟查询大批量数据

    JAVA用线程池模拟查询大批量数据 文章目录 JAVA用线程池模拟查询大批量数据 1 前言背景 1 1 线程 1 2 进程与线程的区别总结 1 3 使用多线程的好处 2 多线程的实现 2 1 操作流程 3 测试 1 前言背景 1 1 线程
  • QListWidget右键菜单

    关于QListWidget右菜单的的实现 网上多数资料都没有提到如何使用Qt Creator快速实现 如参考资料 1 2 本文重点介绍此方法 1 槽函数生成 通过Qt Creator的UI设计器将QListWidget控件拖放到主界面中 然
  • 刷题之77. 组合

    题目 给定两个整数 n 和 k 返回范围 1 n 中所有可能的 k 个数的组合 你可以按 任何顺序 返回答案 示例 1 输入 n 4 k 2 输出 2 4 3 4 2 3 1 2 1 3 1 4 来源 力扣 LeetCode 链接 http
  • Pytorch实现Seq2Seq

    前言 Seq2Seq模型用来处理nlp中序列到序列的问题 是一种常见的Encoder Decoder模型架构 基于RNN同时解决了RNN的一些弊端 输入和输入必须是等长的 Seq2Seq的模型架构可以参考Seq2Seq详解 也可以读论文原文
  • MyBatis中的$和#,你知道他们的区别吗?

    转自 MyBatis中的 和 你知道他们的区别吗 下文笔者将讲述MyBatis中的 和 的区别简介说明 如下所示 在MyBatis的xml配置文件中 我们经常看见 和 后面紧跟变量 那么他们有什么区别呢 下文笔者将一一道来 如下所示 1 是
  • C# 爬虫遇到EventStream数据时该怎么获取值

    声明 本文只作学习研究 禁止用于非法用途 否则后果自负 如有侵权 请告知删除 谢谢 今天调用某个网站的接口时发现数据格式是这种的 第一次遇到 正常的应该是这样的才对 有个 响应 然后响应里面是一些返回过来的数据 而这个就很奇怪 没有 响应
  • 07模板学习之模板类的static数据成员的归属问题

    07模板学习之模板类的static数据成员的归属问题 1 模板类的static数据成员的归属问题分析 从上面的图分析 先看类模板中的static int a 若类模板中声明了static数据 那么该a是属于类模板还是属于具体类呢 假设属于类
  • 菜鸟入门Docker

    菜鸟入门Docker 说明 一 什么是Docker 1 虚拟机和Linux容器 二 Docker用途 三 Docker安装 1 设置仓库 2 安装 Docker Engine Community 3 验证安装成功 四 Docker启动与停止
  • Linux必杀(十八):VI、VIM编辑器

    题记 基本上VI共分为3种模式 分别是一般模式 命令行模式和编辑模式 一 一般模式 以Vi打开一个文件就直接进入一般模式了 在这个模式下 可以使用上下左右按键来移动光标 可以删除字符或删除整行 也可以复制 粘贴文件数据 二 编辑模式 在一般