《Linux系统编程篇》vim的使用 ——基础篇

引言

上节课我们讲了,如何将虚拟机的用户目录映射到自己windows的z盘,虽然这样之后我们可以用自己的编译器比如说Visual Studio Code,或者其他方式去操作里面的文件,但是这是可搭建的情况下,在一些特殊情况下,我们没有办法临时去操作Linux系统里面的文件,会使得我们非常棘手,所以我们要学习Vim,在Linux系统编程中,Vim是一款非常强大的文本编辑器。

愿你在人生的旅途中,始终保持热爱、勇敢和坚持,收获自己想要的美好 ------家驹

文章目录

vim的下载与更新

使用Mobaxterm连接好虚拟机之后,我们来下载或者更新一下vim这款编译器,最好重

新下载一下,因为自带的vim超级难用。

输入以下命令来安装 Vim

c 复制代码
sudo apt update
sudo apt install vim

牛刀小试:使用vim打开文件或编辑

c 复制代码
vim demo1.c

或者

c 复制代码
vi demo1.c

如果没有这个demo1.c的文件则会,编辑保存之后,自动创建这个文件

我这里就是没有这个文件,所以使用了这个命令之后是空的,我们接下来写一个hello word小程序

输入i字母,进入编辑模式

左下角有这个提示就可以编辑了

一定要手敲不要复制,感受一下vim的编辑方式

c 复制代码
#include <stdio.h>

int main()
{
        printf("Hello World");
        return 0
}

输入完成之后,点击键盘左上角的esc键,退出插入编辑模式

接着输入冒号:

代表着输入指令,我们想要退出保存这个文件,所以需要输入的指令是wq

连起来就是:wq

w:保存 q:退出

直接回车

然后就退出到命令行了,接下来我们可以使用cat命令去看一下,我们刚刚编辑的文件有没有成功。

成功,我们成功使用了vim工具编写了一个文件!

vim基本操作

下面我列举了一些,常用基本操作的方法,可以试着用一下。

打开/创建文件

  1. 从终端打开文件:vim 文件名

  2. 创建新文件:vim 新文件名

保存和退出

  1. 保存文件:按下 Esc 进入命令模式,然后输入 :w 并按下 Enter

  2. 不保存文件并退出:按下 Esc 进入命令模式,输入 :q! 并按下 Enter

  3. 保存并退出:按下 Esc 进入命令模式,输入 :wq:x 并按下 Enter

光标移动

  1. 使用箭头键或 h j k l 分别向左、下、上、右移动光标

  2. 移动到行首:0

  3. 移动到行尾:$

  4. 移动到文档开头:gg

  5. 移动到文档末尾:G

编辑文本

  1. 进入编辑模式:在普通模式下按下 i 进入插入模式

  2. 删除字符:在普通模式下按下 x

  3. 复制粘贴:在普通模式下按下 yy 复制当前行,p 粘贴到光标后

  4. 撤销:在普通模式下按下 u

查找和替换

  1. 查找:在普通模式下按下 / 后输入要查找的内容,按下 Enter

  2. 替换:在命令模式下输入 :%s/要替换的内容/新内容/g 并按下 Enter 进行全局替换

分屏和退出分屏

  1. 水平分屏:在命令模式下输入 :sp

  2. 垂直分屏:在命令模式下输入 :vsp

  3. 切换屏幕:按下 Ctrl + w 然后按下 w

  4. 关闭当前屏幕:在普通模式下按下 :q

vim快捷键,提升操作篇

结束

我们后续会教大家使用VS Code去编写代码,但是,建议初学者先用vim编写一阵子,这是一个必须学会的基础。总之一句话孰能生巧。可以试着像本地windows一样操作一些东西,用vim实现,哪里卡住了,就是你进步的时候!

相关推荐
冬天vs不冷42 分钟前
Linux用户与权限管理详解
linux·运维·chrome
凯子坚持 c2 小时前
深入Linux权限体系:守护系统安全的第一道防线
linux·运维·系统安全
✿ ༺ ོIT技术༻2 小时前
C++11:新特性&右值引用&移动语义
linux·数据结构·c++
watermelonoops5 小时前
Deepin和Windows传文件(Xftp,WinSCP)
linux·ssh·deepin·winscp·xftp
疯狂飙车的蜗牛6 小时前
从零玩转CanMV-K230(4)-小核Linux驱动开发参考
linux·运维·驱动开发
远游客07138 小时前
centos stream 8下载安装遇到的坑
linux·服务器·centos
马甲是掉不了一点的<.<8 小时前
本地电脑使用命令行上传文件至远程服务器
linux·scp·cmd·远程文件上传
jingyu飞鸟8 小时前
centos-stream9系统安装docker
linux·docker·centos
超爱吃士力架8 小时前
邀请逻辑
java·linux·后端
cominglately11 小时前
centos单机部署seata
linux·运维·centos