【Linux】Linux环境基础开发工具_2

简介: 【Linux】Linux环境基础开发工具_2

四、Linux环境基础开发工具

2. vim

vim 是Linux下的一款 多模式编辑器 ,可以用来写代码,是 vi 的升级版。

此时无法输入,需要切换模式。

如上图,i 就是切换成 插入模式 ,此时就可以向文件里输入了。

输入完了又该怎么退出呢?按 q 是没有用的,要按 ESC 键退出插入模式。然后怎么退出 vim 呢?此时,输入 :wq 就是保存并退出的意思。

vim 里面还有许多子命令,来进行代码的编写操作。

vim的常见模式

命令模式vim 打开的时候,默认的模式。此时所有的输入都被当作 命令 来看,除非你误触了模式切换的命令。

插入模式 :可以由 命令模式 通过输入 o 、i 、a 等可以切换到插入模式。输入 ESC 可以退出 插入模式 进入到 命令模式

底行模式 :可以由 命令模式 通过输入 : 进入 底行模式 。输入 ESC 可以退出 底行模式 进入到 命令模式

插入模式 不能直接进入到 底行模式

底行模式 不能直接进入到 插入模式

命令模式:

按 $ :移动到光标所在行的“行尾”

按 ^ :移动到光标所在行的“行首”

按 G :将光标移动到文章的最后

n + G :将光标移动到第 n

按 gg :将光标移动到文本开始

按 h :将光标向左移动一格,相当于方向键的 ←

按 j :将光标向下移动一格,相当于方向键的 ↓

按 k :将光标向上移动一格,相当于方向键的 ↑

按 l :将光标向右移动一格,相当于方向键的 →

按 yy :将光标所在行复制到缓冲区。

n + yy :可以将光标所在行开始的 n 行复制到缓冲区。

按 p :可以将缓冲区的字符粘贴到光标所在的下一行。

n + p :可以粘贴 n 次。

按 u : 可以撤销上一条命令操作。

按 Ctrl + r : 可以反撤销。(对撤销进行撤销)

按 dd :删除光标所在行,剪切功能,可以使用粘贴。

n + dd :可以从光标所在行开始删除(剪切) n 行。

按 ~ :可以快速大小写转换。

按 r + c:可以换当前光标所在字符替换成 c

n + r + c :可以批量替换字符。

按 R :进入 替换模式 ,接下来所写的所有字符都将替换之前的字符。想要退出 替换模式ESC 即可。

按 x :可以删除光标所在字符。

n + x :可以批量删除。

按 X :可以向左侧删除(删除光标所在行的左侧字符)。

n + X :可以批量删除。

按 w :可以按单词在行内从左向右移动。

按 b :可以按单词在行内从右向左移动。

按 # :可以高亮(选中)一个关键字。接着按 n 可以往下查找选中的关键字。

底行模式:

w :保存。

w! :强制保存。

q :退出。

q! :强制退出。

wq :保存并退出。

wq! :强制保存并退出。

! + 命令 :不退出vim,并执行shell命令。

/ + c :查找 c 字符/字符串。

vs + 文件 :与另一个文件进行分屏比较,文件可不存在。光标在哪个界面,我们就正在编辑哪个文件,底行也是一样。按 Ctrl + ww 可以实现光标多终端切换。

set nu :可以显示行号。

set nonu :可以取消显示行号。


未完待续

目录
相关文章
|
17天前
|
NoSQL 关系型数据库 Redis
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
mall在linux环境下的部署(基于Docker容器),docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongodb、minio详细教程,拉取镜像、运行容器
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
|
23天前
|
前端开发 Linux
深度探索Linux操作系统 —— 构建桌面环境3
深度探索Linux操作系统 —— 构建桌面环境
29 12
|
16天前
|
Shell Linux API
C语言在linux环境下执行终端命令
本文介绍了在Linux环境下使用C语言执行终端命令的方法。首先,文章描述了`system()`函数,其可以直接执行shell命令并返回结果。接着介绍了更强大的`popen()`函数,它允许程序与命令行命令交互,并详细说明了如何使用此函数及其配套的`pclose()`函数。此外,还讲解了`fork()`和`exec`系列函数,前者创建新进程,后者替换当前进程执行文件。最后,对比了`system()`与`exec`系列函数的区别,并针对不同场景推荐了合适的函数选择。
|
23天前
|
存储 搜索推荐 Linux
深度探索Linux操作系统 —— 构建桌面环境1
深度探索Linux操作系统 —— 构建桌面环境
33 8
|
23天前
|
Linux 编译器 C语言
深度探索Linux操作系统 —— 构建桌面环境2
深度探索Linux操作系统 —— 构建桌面环境
26 6
|
25天前
|
应用服务中间件 Linux 网络安全
【Azure 应用服务】App Service for Linux 环境中为Tomcat页面修改默认的Azure 404页面
【Azure 应用服务】App Service for Linux 环境中为Tomcat页面修改默认的Azure 404页面
|
26天前
|
JSON Linux 网络安全
【Azure 应用服务】如何从App Service for Linux 的环境中下载Container中非Home目录下的文件呢?
【Azure 应用服务】如何从App Service for Linux 的环境中下载Container中非Home目录下的文件呢?
|
26天前
|
应用服务中间件 Linux 网络安全
【Azure 应用服务】PHP应用部署在App Service for Linux环境中,上传文件大于1MB时,遇见了413 Request Entity Too Large 错误的解决方法
【Azure 应用服务】PHP应用部署在App Service for Linux环境中,上传文件大于1MB时,遇见了413 Request Entity Too Large 错误的解决方法
|
26天前
|
Linux PHP
【Azure 应用服务】PHP项目部署到App Service for Linux环境中,如何修改上传文件大小的限制呢?
【Azure 应用服务】PHP项目部署到App Service for Linux环境中,如何修改上传文件大小的限制呢?
|
26天前
|
JavaScript Linux API
【Azure 应用服务】NodeJS Express + MSAL 应用实现AAD集成登录并部署在App Service Linux环境中的实现步骤
【Azure 应用服务】NodeJS Express + MSAL 应用实现AAD集成登录并部署在App Service Linux环境中的实现步骤