【Linux】Vim文本编辑器

人生碌碌,竟短论长,却不道荣枯有数,得失难量。

前言

这是我自己学习Linux系统编程的第二篇笔记。后期我会继续把Linux系统编程笔记开源至博客上。

上一期笔记是关于 Linux 的指令与权限知识:【Linux】指令与权限-CSDN博客https://blog.csdn.net/hsy1603914691/article/details/143726825

Linux下安装软件的方法

  1. 源代码安装

  2. rpm包安装

  3. 包管理器安装--->yum/apt

包管理器

  1. 包管理器相当于华为手机中的华为应用商城

  2. Linux机器上,有对应的yun/apt提供的配置文件

  3. 由于原先大多软件包服务器在国外,直接下载时速度比较慢,所以可以去国内的镜像网站去下载,下面是清华大学开源软件镜像站链接:

清华大学开源软件镜像站 | Tsinghua Open Source Mirrorhttps://mirrors.tuna.tsinghua.edu.cn/4. yun/apt不仅可以解决下载安装卸载问题,还可以解决路径依赖问题,不用手动去下载依赖的文件。

yum指令

sudo yum install -y xxx下载xxx软件包

sudo yum remove -y xxx卸载xxx软件包

  1. yum指令 在同一个时间只能安装一个软件包

  2. 在执行yum指令时,必须保证网络通畅
    sudo yum install -y epel-release更新CentOS里面的yum扩展源

  3. yum源包括标准源扩展源标准源里面存放稳定的软件包扩展源里面存放较新的软件包

  4. CentOS里面的yum源 都保存在 /etc/yum.repos.d路径下。

操作系统的生态

  1. 操作系统之间的最大区别在于操作系统的生态

  2. 操作系统的生态包括:社区论坛官网文档软件体系维护更新速度操作系统自身客户群体

Linux编辑器

IDE

  1. VS2022Dev-C++这种集成了:编译、调试、项目管理、支持多种编程语言等功能的开发环境,称为IDE(集成开发环境)。

vim

为什么选择vim

  1. 很多软件的编辑接口 都会主动调用vim

  2. vim具有程序编程能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计

vim的三种常用模式

1.vim是一个专注的多模式的编辑器

  1. vim是一个储存在**/usr/bin/vim路径下面的可执行程序**。

  2. vim存在三种常用的模式命令模式插入模式底行模式

  1. 命令模式又称为默认模式输入的内容都会被当作命令

  2. 插入模式又称为正常的编写模式

  3. 命令模式切换到插入模式i

  4. 插入模式切换到命令模式Esc

  5. 命令模式 切换到底行模式

  6. 底行模式 切换到命令模式Esc

vim基础指令

vim xxx启动Vim编辑器并尝试打开名为xxx的文件进行编辑。

命令模式指令

光标指令

gg把光标定位到第一行

shirt+g把光标定位到最后一行

n+G把光标定位到第n行
$把光标定位到本行结尾

^把光标定位到本行行首
H把光标向左移动

J把光标向下移动

K把光标向上移动

L把光标向右移动
w把光标向右移动一个单词

b把光标向左移动一个单词

编辑命令

yy复制当前行

dd剪切当前行

p粘贴到当前行

  1. 指令前面可以加上数字n,表示从光标开始的前n行都进行该指令操作
    u撤销

ctrl+r对上一次u指令进行撤销
x(小写)删除光标处的一个字符

X(大写)删除光标前面的一个字符
~把光标上的字母从小写替换成大写并从左向右遍历完这一行

shirt+r进入替换模式输入内容会替换当前光标所在内容

底行模式指令

w保存

q退出

wq保存并退出
set nu显示行号

set nonu不显示行号
vs xxx垂直分割当前窗口并在新创建的窗口中打开指定的文件xxx

ctrl+w进入窗口切换模式
! xxx强制执行xxx指令

/ xxx找到文本中xxx的位置按n找到文本中下一个xxx的位置

视图模式指令

  1. ctrl+v--->h/j/k/l--->shirt+i--->//--->Esc

  2. ctrl+v--->h/j/k/l--->shirt+i--->d--->Esc

  3. ctrl+v进入视图模式,可以进行批量化注释代码,也可以批量化取消代码注释

  4. 视图模式也可以进行批量化编辑

配置vim文件

  1. 可以参考gitee上面这篇博客:

VimForCpp: 快速将vim打造成c++ IDEhttps://gitee.com/HGtz2222/VimForCpp

致谢

感谢您花时间阅读这篇文章!如果您对本文有任何疑问、建议或是想要分享您的看法,请不要犹豫,在评论区留下您的宝贵意见。每一次互动都是我前进的动力,您的支持是我最大的鼓励。期待与您的交流,让我们共同成长,探索技术世界的无限可能!

相关推荐
努力学习的小廉30 分钟前
深入了解linux系统—— 进程池
linux·运维·服务器
秃头菜狗1 小时前
各个主要目录的功能 / Linux 常见指令
linux·运维·服务器
2301_793102491 小时前
Linux——MySql数据库
linux·数据库
jiunian_cn2 小时前
【Linux】centos软件安装
linux·运维·centos
程序员JerrySUN2 小时前
[特殊字符] 深入理解 Linux 内核进程管理:架构、核心函数与调度机制
java·linux·架构
孤寂大仙v2 小时前
【计算机网络】非阻塞IO——select实现多路转接
linux·计算机网络
派阿喵搞电子3 小时前
Ubuntu下有关UDP网络通信的指令
linux·服务器·网络
Evan_ZGYF丶3 小时前
【PCIe总线】 -- PCI、PCIe相关实现
linux·嵌入式·pcie·pci
舰长1153 小时前
Ubuntu挂载本地镜像源(像CentOS 一样挂载本地镜像源)
linux·ubuntu·centos
程序员JerrySUN3 小时前
全面理解 Linux 内核性能问题:分类、实战与调优策略
java·linux·运维·服务器·单片机