高效文本编辑与导航:Vim中的三种基本模式及粘滞位的深度解析

news2024/11/24 14:43:25


✨✨ 欢迎大家来访Srlua的博文(づ ̄3 ̄)づ╭~✨✨

🌟🌟 欢迎各位亲爱的读者,感谢你们抽出宝贵的时间来阅读我的文章。

我是Srlua小谢,在这里我会分享我的知识和经验。🎥

希望在这里,我们能一起探索IT世界的奥妙,提升我们的技能。🔮

记得先点赞👍后阅读哦~ 👏👏

📘📚 所属专栏:Linux、运维

欢迎访问我的主页:Srlua小谢 获取更多信息和资源。✨✨🌙🌙

​​

​​

目录

粘滞位

粘滞位的使用

粘滞位的优点

适用场景

文本编辑器Vim三种模式

1. 命令模式(Normal Mode)

光标所在行

光标快速定位

2. 插入模式(Insert Mode)

3. 底行模式(Command-Line Mode)

总结


在此之前,为权限篇做一个补充:什么是粘滞位

粘滞位

在Linux中,"粘滞位"(Sticky Bit)是一种文件权限设置,主要用于目录,以确保只有文件的所有者或超级用户可以删除或重命名目录中的文件。它通常用于公共目录,如/tmp,以防止用户删除或修改其他用户的文件。

粘滞位的使用

  1. 设置粘滞位: 可以使用chmod命令来设置粘滞位。例如:

    chmod +t /path/to/directory
  2. 查看粘滞位: 使用ls -l命令查看目录权限时,如果粘滞位被设置,会在权限字符串的最后一位显示为t

    drwxrwxrwt 9 root root 4096 Oct 25 12:00 /tmp
  3. 删除文件: 如果在一个有粘滞位的目录中,用户只能删除自己创建的文件或目录,其他用户无法删除。

粘滞位的优点

  • 安全性:防止其他用户意外或恶意删除文件。
  • 管理:在共享目录中,维护文件的完整性。

适用场景

  • /tmp:临时文件存储,允许所有用户创建文件,但防止其他用户删除。
  • 任何需要共享但又不希望用户干扰彼此文件的目录。

文本编辑器Vim三种模式

在Linux中,特别是在使用文本编辑器Vim时,有三种主要的模式:命令模式、插入模式和底行模式。每种模式有不同的功能和用途。

1. 命令模式(Normal Mode)

光标所在行

  • 进入方式:打开Vim时默认处于此模式。
  • 功能:在命令模式下,你可以使用各种命令来操作文本,比如移动光标、删除行、复制粘贴等。
  • 常用命令
    • hjkl:左右上下移动光标。
    • x:删除光标所在的字符。
    • dd:删除当前行。
    • yy:复制当前行。(n+yy)
    • p:粘贴。

在Vim中,n+yyn+ddn+p是一些非常实用的命令,用于复制、删除和粘贴文本。以下是对它们的详细说明:

1. n+yy:复制多行

  • 功能:复制当前行及其下方的 n 行(包括当前行)。
  • 用法
    • 在命令模式下,输入 n(例如,3)后紧接着输入 yy
    • 示例:3yy 复制当前行及下方的两行(共三行)。

2. n+dd:删除多行

  • 功能:删除当前行及其下方的 n 行(包括当前行)。
  • 用法
    • 在命令模式下,输入 n 后紧接着输入 dd
    • 示例:2dd 删除当前行及下方的一行(共两行)。

3. n+p:粘贴多行

  • 功能:将之前复制或删除的内容粘贴到光标位置。
  • 用法
    • 在命令模式下,直接输入 p(在光标后粘贴)或 P(在光标前粘贴)。
    • 如果之前使用 n+yy 或 n+dd 进行了操作,使用 p 会粘贴你刚刚复制或删除的内容。

示例

假设当前有以下文本:

1. 行一
2. 行二
3. 行三
4. 行四
5. 行五
  • 执行 2yy,则复制“行一”和“行二”。
  • 执行 3dd,则删除“行一”、“行二”和“行三”。
  • 执行 p,则将之前复制的“行一”和“行二”粘贴在光标所在位置。

光标快速定位

1. Shift + r

  • 功能:在命令模式下,按 Shift + r 进入替换模式,可以替换光标所在位置的字符。你可以逐个字符地替换文本。

2. Shift + g

  • 功能:跳转到文件的最后一行。可以快速查看文件的末尾内容。

3. gg

  • 功能:跳转到文件的第一行。与 Shift + g 相对,方便快速返回文件开头。

4. n + Shift + g

  • 功能:如果在搜索模式下,按 n 加 Shift + g,将跳转到下一个匹配的结果所在的行。

5. Shift + 4 = $

  • 功能:移动光标到当前行的行尾。$ 是在命令模式下的常用命令。

6. Shift + 6 = ^

  • 功能:移动光标到当前行的行首。^ 是在命令模式下的另一个常用命令。

7. 单词为单位,向后跳转

  • 命令:使用 w 可以向前跳转到下一个单词的开头。

8. 单词为单位,向前跳

  • 命令:使用 b 可以向后跳转到前一个单词的开头。

9. n + x:光标位置向后按照字符进行删除

  • 功能:删除光标所在位置的 n 个字符。比如,3x 会删除光标后面的三个字符。

10. Shift + x = X:光标位置向前删除

  • 功能:删除光标前面的字符。X 会删除光标前的一个字符,n + Shift + x 可以删除多个字符。

11. Shift + ~

  • 功能:切换光标位置字符的大小写。例如,光标所在字符会从小写变为大写,反之亦然。

12. n + r:替换字符

  • 功能:在命令模式下,输入 n(例如 2)后按 r,可以替换光标所在位置的字符。例如,2rX 会将光标位置的下一个字符替换为 X

13. u

  • 功能:撤销上一次的操作。多次按 u 可以撤销多次操作。

14. Ctrl + r

  • 功能:重做撤销的操作。与 u 相反,可以恢复之前撤销的操作。

注释:ctrl + v   hjkl (光标定位) shift + i(l) -> // -> esc

去注释:ctrl + v -> hjkl -> d

2. 插入模式(Insert Mode)

  • 进入方式:从命令模式按 i 进入插入模式(在光标前插入),按 a(在光标后插入),或按 o(在当前行下新建一行并插入)。
  • 功能:在插入模式下,可以直接输入文本。
  • 退出方式:按 Esc 键返回命令模式。

3. 底行模式(Command-Line Mode)

  • 进入方式:在命令模式下按 : 键。
  • 功能:可以输入各种命令,比如保存、退出、搜索等。
  • 常用命令
    • :w:保存文件。
    • :q:退出Vim。
    • :wq:保存并退出。
    • :q!:强制退出(不保存)。
    • :set number:显示行号。

总结

  • 命令模式:进行导航和文本操作。
  • 插入模式:输入文本。
  • 底行模式:执行命令和设置。

​​

希望对你有帮助!加油!

若您认为本文内容有益,请不吝赐予赞同并订阅,以便持续接收有价值的信息。衷心感谢您的关注和支持!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2223853.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

有色行业测温取样机器人 - SNK施努卡

SNK施努卡有色行业熔炼车间机器人测温取样 在有色行业,测温取样机器人专门设计用于自动化处理高温熔体的温度监测和样品采集任务。这类机器人在铜、铝、锌等金属冶炼过程中扮演着关键角色,以提高生产效率、确保产品质量并增强工作安全性。 主要工作项 …

ABAP ALV

目录 一、基本概念 1、ALV概览 2、基本概念 二、属性更改 1、FIELDCAT 2、宏 3、LAYOUT 4、升序降序SORT 5、FILTER 三、交互 1、实现自己的按钮 一、基本概念 1、ALV概览 ALV:SAP List View,是SAP提供的一个强大的数据报表显示工具 ALV实际上是一个…

前端零基础入门到上班:【Day3】从零开始构建网页骨架HTML

HTML 基础入门&#xff1a;从零开始构建网页骨架 目录 1. 什么是 HTML&#xff1f;HTML 的核心作用 2. HTML 基本结构2.1 DOCTYPE 声明2.2 <html> 标签2.3 <head> 标签2.4 <body> 标签 3. HTML 常用标签详解3.1 标题标签3.2 段落和文本标签3.3 链接标签3.4 图…

CRLF、UTF-8这些编辑器右下角的选项的意思

经常使用编辑器的小伙伴应该经常能看到右下角会有这么两个选项&#xff0c;下图是VScode中的示例&#xff0c;那么这两个到底是啥作用呢&#xff1f; 目录 字符编码ASCII 字符集GBK 字符集Unicode 字符集UTF-8 编码 换行 字符编码 此部分参考博文 在计算机中&#xff0c;所有…

网络搜索引擎Shodan(1)

声明&#xff1a;学习视频来自b站up主 泷羽sec&#xff0c;如涉及侵权马上删除文章 感谢泷羽sec 团队的教学 视频地址&#xff1a;shodan(1)_哔哩哔哩_bilibili 本文主要讲解网络搜索引擎Shodan的一些用法&#xff08;host和search这两个命令&#xff09;。 Shodan 是一个网络…

合合信息亮相PRCV大会,探讨生成式AI时代的内容安全与系统构建加速

一、前言 在人工智能技术的飞速发展下&#xff0c;生成式AI已经成为推动社会进步的重要力量。然而&#xff0c;随着技术的不断进步&#xff0c;内容安全问题也日益凸显。如何确保在享受AI带来的便利的同时&#xff0c;保障信息的真实性和安全性&#xff0c;已经成为整个行业待解…

高速自爆穿梭无人机技术详解

高速自爆穿梭无人机技术是一种结合了高速飞行与自爆式攻击能力的先进无人机技术。以下是对该技术的详细解析&#xff1a; 一、技术特点 1. 高速飞行&#xff1a; 高速自爆穿梭无人机通常具备极高的飞行速度&#xff0c;如部分型号的速度可达到174公里/小时&#xff0c;甚至更…

Stack和Queue(3)

Stack和Queue&#xff08;3&#xff09; priority_queue的模拟实现 priority_queue.h #include <vector>namespace soobin {template<class T, class Container vector<T>>class priority_queue{public://强制生成默认构造priority_queue() default;temp…

html+css+js实现Notification 通知

实现效果&#xff1a; 代码实现&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Notif…

深入拆解TomcatJetty——Tomcat如何实现IO多路复用

深入拆解Tomcat&Jetty 专栏地址&#xff1a; 极客时间-深入拆解Tomcat & Jetty IO 多路复用 当用户线程发起 I/O 操作后&#xff0c;网络数据读取操作会经历两个步骤&#xff1a; 用户线程等待内核将数据从网卡拷贝到内核空间。内核将数据从内核空间拷贝到用户空间…

Docker搭建DVWA靶场以及刷题记录

Docker搭建DVWA靶场以及刷题记录 Docker搭建DVWA靶场以及刷题记录靶场搭建 刷题记录SQL InjectionLowMediumHighImpossible SQL Injection(Blind)LowMediumHigh XSS (Reflected)LowMediumHigh XSS (Stored)LowMediumHigh File UploadLowMediumHigh Docker搭建DVWA靶场以及刷题记…

zabbix 6.0 监控clickhouse(单机)

zabbix 6.0 LTS已经包含了clickhouse的监控模板&#xff0c;所以我们可以直接使用自带的模板来监控clickhouse了。 0.前置条件 clickhouse 已经安装&#xff0c;我安装的是24.3.5.47zabbix-agent 已经安装并配置。系统是ubuntu 2204 server 1. 新建监控用户 使用xml的方式为…

适用于 Windows 11/10 电脑 的 13 个最佳文件恢复软件

如果您由于系统故障、硬件损坏、人为错误或病毒攻击而丢失了重要文件或文件夹。不用担心&#xff0c;因为我们随时为您提供帮助&#xff01;借助正确的文件恢复工具&#xff0c;您可以立即检索计算机上不同类型的文件。如果你有为您的文件创建备份&#xff0c;你不用担心&#…

juzigei/基于 ThinkPHP+Mysql灵活用工_灵活用工系统_灵活用工平台

基于 ThinkPHPMysql 灵活用工灵活用工平台灵活用工系统灵活用工小程序灵活用工源码灵活用工系统源码 开发语言 ThinkPHPMysql 源码合作 提供完整源代码 软件界面展示 一、企业管理后台 二、运用管理平台 三、手机端

ECharts饼图-饼图自定义样式,附视频讲解与代码下载

引言&#xff1a; 在数据可视化的世界里&#xff0c;ECharts凭借其丰富的图表类型和强大的配置能力&#xff0c;成为了众多开发者的首选。今天&#xff0c;我将带大家一起实现一个饼图图表&#xff0c;通过该图表我们可以直观地展示和分析数据。此外&#xff0c;我还将提供详…

视频播放速度过快怎么办?视频速度调慢的简单方法

视频播放速度过快怎么办&#xff1f;在这个快节奏的时代&#xff0c;我们似乎习惯了迅速浏览和消化信息&#xff0c;视频内容也不例外。然而&#xff0c;有时我们会遇到视频速度过快的问题&#xff0c;这不仅让我们难以捕捉到每一个细节&#xff0c;更可能让我们错失视频所要传…

【ChatGPT插件漏洞三连发之二】零点击Github仓库接管

在我们深入研究细节之前&#xff0c;我们想先解释一下插件上的帐户接管意味着什么。 举个例子&#xff0c;当您安装与您的 GitHub 交互的插件时&#xff0c;此插件会在插件网站上为您创建一个额外的帐户&#xff0c;用于存储您的 GitHub 凭据。使用这些凭据&#xff0c;插件可…

内置数据类型、变量名、字符串、数字及其运算、数字的处理、类型转换

内置数据类型 python中的内置数据类型包括&#xff1a;整数、浮点数、布尔类型&#xff08;以大写字母开头&#xff09;、字符串 变量名 命名变量要见名知意&#xff0c;确保变量名称具有描述性和意义&#xff0c;这样可以使得代码更容易维护&#xff0c;使用_可以使得变量名…

Linux中级(DNS域名解析服务器)

一。产生原因1.IP地址&#xff1a;是互联网上计算机唯一的逻辑地址&#xff0c;通过IP地址实现不同计算机之间的相互通信&#xff0c;每台联网计算机都需要通过IP地址来互相联系和分别&#xff0c;但由于IP地址是由一串容易混淆的数字串构成&#xff0c;人们很难记忆所有计算机…

计算机毕业设计Python+大模型租房推荐系统 租房大屏可视化 租房爬虫 hadoop spark 58同城租房爬虫 房源推荐系统

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 用到的技术: 1. python…