Linux 学习 --- 编辑 vi 命令

news2024/11/24 0:14:16

1、vi 基本概念(了解)

  • 基本上 vi 可以分为三种状态,分别是命令模式 (command mode)、插入模式 (Insert mode) 和底行模式 (last line mode),各模式的功能区分如下:

    1. 命令行模式 command mode)

      控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入 Insert mode 下,或者到 last line mode。

    1. 插入模式(Insert mode)

      只有在 Insert mode 下,才可以做文字输入,按「ESC」键可回到命令行模式。

    1. 底行模式(last line mode)

      将文件保存或退出 vi,也可以设置编辑环境,如寻找字符串、列出行号…… 等。

2、安装 vim

yum install -y vim-enhanced

  • 输入命令

  • 下载安装包

  • 安装

3、插入

  • 从命令行模式,进入插入模式

  • 按 "ESC" 键,从 "插入模式" 进入 "命令行模式"

    命令描述
    i在光标前插入
    shift + i在光标当前行开始插入
    a在光标后插入
    shift + a在光标当前行末尾插入
    o在光标当前行的下一行插入新行
    shift + o在光标当前行的上一行插入新行
  • 插入模式下,快捷键

    ctrl+w 撤销一个

    ctrl+u 清空光标前的内容

    ctrl+j 前面插入一个空行

4、复制和粘贴

  • 在命令行模式下 (一般模式)

    命令描述
    yy单行复制将光标移动到将要复制的行处
    nyy多行复制将光标移动到将要复制的首行处
    p粘贴将光标移动到将要粘贴的行处
    :'a,'b co 'c拷贝指定行 1)拷贝开始位置:ma2)拷贝结束位置:mb3)需要拷贝到位置:mc: 2,4 co 8 复制第 2--4 行,插入到第 8 行下面
    :'a 'b m 'c剪切指定行

5、定位

  • 如果命令以冒号开头,进入 "低行模式",其他都是 "命令行模式"

    命令描述
    :set nu显示行号
    :set nonu取消行号
    gg到文本的第一行
    shift + g到文本的最后一行
    :n 或 nG --20 shift+g到文本的第 n 行
    ctrl + b屏幕往 "后" 移动一页
    ctrl + f屏幕往 "前" 移动一页

6、删除

  • 一般模式下操作

    命令描述
    :set nu显示行号
    :set nonu取消行号
    gg到文本的第一行
    shift + g到文本的最后一行
    :n 或 nG --20 shift+g到文本的第 n 行
    ctrl + b屏幕往 "后" 移动一页
    ctrl + f屏幕往 "前" 移动一页

7、替换和取消命令

  • 一般模式下

    命令描述
    uundo,取消上一步操作
    Ctrl + rredo,返回到 undo 之前
    r替换光标所在处的字符
    shift + r从光标所在处开始替换,按 Esc 键结束

8、退出编辑

  • 进入 "行底模式" 操作

    命令描述
    :q退出 vi(没有做任何修改时)
    :q!强制退出不保存
    :w保存不退出
    :wq保存后退出

9、rpm 安装

命令描述语法介绍
rpm安装 rpm 文件-i  显示套件的相关信息
-v  显示指令执行过程
-h套件安装时列出标记
-U升级指定的套件档
-e删除指定的套件
--nodeps不验证套件档的相互关联性
-q使用询问模式
-a  查询所有套件

10、权限管理

  • 需求:修改 /root/itcast 文件夹的权限

  • 命令

    1)chmod (change mode) 功能:变更文件或目录的权限。

    语法:chmod [参数] [< 权限范围 >< 符号 >< 权限代号 >]

    -R 或 --recursive  递归处理,将指定目录下的所有文件及子目录一并处理。

    • 权限范围的表示法如下:

      u:User,即文件或目录的拥有者。

      g:Group,即文件或目录的所属群组。

      o:Other,除了文件或目录拥有者或所属群组之外,其他用户皆属于这个范围。

      a:All,即全部的用户,包含拥有者,所属群组以及其他用户。

    • 符号:

      • 添加权限

      - 取消权限

      = 重写分配权限

    • 有关权限代号的部分,列表于下:

      r:读取权限,数字代号为 "4"。

      w:写入权限,数字代号为 "2"。

      x:执行或切换权限,数字代号为 "1"。

      -:不具任何权限,数字代号为 "0"。

    • linux 权限格式:<类型>< 用户 >< 组 >< 其他用户 >

  • 授权操作结论

    • 没有权限:chmod 000 ./abc

    • 所有权限:chmod 777 ./abc

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

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

相关文章

「笔试刷题」:字母收集

一、题目 描述 有一个 &#x1d45b;∗&#x1d45a; 的矩形方阵&#xff0c;每个格子上面写了一个小写字母。 小红站在矩形的左上角&#xff0c;她每次可以向右或者向下走&#xff0c;走到某个格子上就可以收集这个格子的字母。 小红非常喜欢 "love" 这四个字母。…

kubernetes中使用ELK进行日志收集

目录 一、需要收集哪些日志 1、kubernetes集群的系统组件日志 2、应用日志 二、日志收集方案ELK 1、收集日志&#xff1a;Logstash 2、存储日志&#xff1a;Elasticsearch 3、展示日志&#xff1a;Kibana 三、安装elk 1、下载安装包 2、创建用户并切换到新用户 3、上…

【Web】CTFSHOW 中期测评刷题记录(1)

目录 web486 web487 web488 web489 web490 web491 web492 web493 web494 web495 web496 web497 web498 web499 web500 web501 web502 web503 web505 web506 web507 web508 web509 web510 web486 扫目录 初始界面尝试文件包含index.php&am…

ubuntu与redhat的不同之处

华子目录 什么是ubuntu概述 ubuntu版本简介桌面版服务器版 安装部署部署后的设置设置root密码关闭防火墙启用允许root进行ssh登录更改apt源安装所需软件 网络配置Netplan概述配置详解配置文件DHCP静态IP设置设置 软件安装方法apt安装软件作用常用命令配置apt源 deb软件包安装概…

基于React实现B站评论区

今天继续来学习一下React&#xff0c;使用React实现B站评论区&#xff0c;如下图&#xff1a; 在使用React开发类似B站评论区的功能时&#xff0c;我们需要考虑以下几个关键点来构建一个基本的评论系统&#xff1a; 1. 设计组件结构 首先&#xff0c;设计组件结构是关键。至少…

【数据结构】:链表的带环问题

&#x1f381;个人主页&#xff1a;我们的五年 &#x1f50d;系列专栏&#xff1a;数据结构 &#x1f337;追光的人&#xff0c;终会万丈光芒 前言&#xff1a; 链表的带环问题在链表中是一类比较难的问题&#xff0c;它对我们的思维有一个比较高的要求&#xff0c;但是这一类…

ThreeJS:Mesh网格与三维变换

Mesh网格 ThreeJS中&#xff0c;Mesh表示基于以三角形为多边形网格(polygon mesh)的物体的类&#xff0c;同时也作为其它类的基类。 通过Mesh网格&#xff0c;我们可以组合Geometry几何体与Material材质属性&#xff0c;在3D世界中&#xff0c;定义一个物体。例如&#xff1a;之…

Unity ParticleSystem 入门

概述 在项目的制作过程成&#xff0c;一定少不了粒子系统的使用吧&#xff0c;如果你想在项目粒子效果&#xff0c;那这部分的内容一定不要错过喔&#xff01;我添加了理解和注释更好理解一点&#xff01; 这次的内容比较多&#xff0c;右侧有目录&#xff0c;可以帮助快速导…

高中数学:三角函数公式汇总及推导

一、定义 常用三角函数值 参考&#xff1a; 三角函数定义 二、基本三角函数及相互关系 sinx cosx tanx cscx secx cotx 函数间相互关系 参考&#xff1a; cosx、sinx、tanx的函数图像与性质 secx、cscx、cotx函数图像及相关关系 三、诱导公式 口诀&#xff1a;奇变…

通信接口——时钟和信号

前言 所有接口只要抓住三个核心点就能分清&#xff1a;时钟同步和异步&#xff0c;时钟的来源&#xff0c;信号的传输方向。 一、时钟同步和异步 接口之间的交互方式存在多种形式&#xff0c;如果按照是否有公共时钟CLK的参与&#xff0c;可以分为同步传输和异步传输。 同步&…

C语言——队列的实现

队列按照先进先出&#xff08;FIFO&#xff0c;First In First Out&#xff09;的原则管理数据。这意味着最先进入队列的元素会被最先移出&#xff0c;类似于排队等候服务的情况。队列通常有两个主要操作&#xff1a;入队&#xff08;enqueue&#xff09;&#xff0c;将元素添加…

DRF返回值源码分析

DRF返回值源码分析 1 返回值 在视图中定义finalize_response方法&#xff08;也可以用来判断是否异常&#xff09; 自定义异常 配置文件 # settings.py REST_FRAMEWORK {"EXCEPTION_HANDLER": utils.handlers.exception_handler # 自定义的exceptional_handler路…

Sarcasm detection论文解析 |利用对话语境进行讽刺分析

论文地址&#xff1a; 论文地址&#xff1a;Sarcasm Analysis Using Conversation Context | Computational Linguistics | MIT Press github地址&#xff1a;https://github.com/debanjanghosh/sarcasm_context Alex-Fabbri/deep_learning_nlp_sarcasm: code for deep learnin…

基于springboot实现公司日常考勤系统项目【项目源码+论文说明】

基于springboot实现公司日常考勤系统演示 摘要 目前社会当中主要特征就是对于信息的传播比较快和信息内容的安全问题&#xff0c;原本进行办公的类型都耗费了很多的资源、传播的速度也是相对较慢、准确性不高等许多的不足。这个系统就是运用计算机软件来完成对于企业当中出勤率…

debug的基本使用

1.简介   首先看下IDEA中Debug模式下的界面。 如下是在IDEA中启动Debug模式&#xff0c;进入断点后的界面&#xff0c;我这里是Windows&#xff0c;可能和Mac的图标等会有些不一样。就简单说下图中标注的8个地方&#xff1a; ① 以Debug模式启动服务&#xff0c;左边的一个按…

Redis运维篇-快速面试笔记(速成版)

文章目录 1. Redis的持久化1.1 RDB&#xff08;快照模式&#xff09;1.2 AOF 模式 2. Redis主从模型&#xff08;高可用&#xff09;2.1 Redis的主从复制2.2 Redis拓扑结构 3. Redis集群模式&#xff08;高并发&#xff09;3.1 Redis的Slots3.2 集群模式的常用命令3.3 多主多从…

win下vscode的vim切换模式的中英文切换

问题描述 在vscode中安装vim插件后&#xff0c;如果insert模式下完成输入后&#xff0c;在中文输入方式下按esc会发生无效输入&#xff0c;需要手动切换到英文。 解决方法 下载完成vscode并在其中配置vim插件下载github—im-select.exe插件&#xff08;注意很多博文中的gitcod…

Node.js -- express 框架

文章目录 1. express 使用2. 路由2.1 路由的使用2.2 获取请求报文参数2.3 获取路由参数2.4 路由参数练习 3. express 响应设置4. 中间件4.1 全局中间件4.2 路由中间件4.3 静态资源中间件 5. 获取请求体数据 body-parser6. 防盗链7. 路由模块化8. 模板引擎8.1 了解EJS8.2 列表渲…

InfluxDB安装使用介绍

1.介绍 InfluxDB是一个由InfluxData开发的开源时序型数据。它由Go写成&#xff0c;着力于高性能地查询与存储时序型数据。InfluxDB被广泛应用于存储系统的监控数据&#xff0c;IoT行业的实时数据等场景。 2.对常见关系型数据库&#xff08;MySQL&#xff09;的基础概念对比 1…

Spring Cloud——Circuit Breaker上篇

Spring Cloud——Circuit Breaker上篇 一、分布式系统面临的问题1.服务雪崩2.禁止服务雪崩故障 二、Circuit Breaker三、resilience4j——服务熔断和降级1.理论知识2.常用配置3.案例实战&#xff08;1&#xff09;COUNT_BASED&#xff08;计数的滑动窗口&#xff09;&#xff0…