【linux基础(五)】Linux中的开发工具(上)---yum和vim

💓博主CSDN主页:杭电码农-NEO💓

⏩专栏分类:Linux从入门到开通⏪

🚚代码仓库:NEO的学习日记🚚

🌹关注我🫵带你学更多操作系统知识
  🔝🔝


在这里插入图片描述

Linux中的开发工具

  • 1. 前言
  • 2. Linux软件包管理器:yum
  • 3. linux上安装和卸载软件包
  • 4. Linux中的编辑器:vim
  • 5. vim下的底行模式详解
  • 6. vim下的正常模式详解(上)
  • 7. vim下的正常模式详解(下)
  • 8. vim下的替换模式
  • 9. vim下的视图模式
  • 10. vim下的多线程操作
  • 11. 总结以及拓展

1. 前言

理解了Linux基本指令和权限之后
终于开始了与代码相关的工具的使用
想必各位早已听说过vim的大名,这篇文章
将带你深入浅出vim的各种使用方法

本章重点:

本篇文章重点介绍vim文本工具的使用
以及vim的五种模式,并且带大家熟悉
Linux下的下载和卸载软件的指令:yum


2. Linux软件包管理器:yum

不要觉得yum有多神奇多深奥
yum其实就是一个软件,也可以叫商店
和你手机上的应用商店或app store一样
yum的功能就是搜索并下载需要的软件包

注:使用yum必须联网!

查看一共有哪些软件包

使用指令: yum list

由于Linux下的软件包十分多
所以可以使用以下指令来搜索关键字

使用指令: yum list | grep 关键字

比如我输入关键字lrzsz:

在这里插入图片描述


3. linux上安装和卸载软件包

使用指令: yum install 想安装的软件包名

使用这条指令后,输入y确定下载
查看到complete就说明下载完成了!

注意事项:

yum下载时往往会向系统目录写入内容
一般需要sudo或切换到root账号才能下载
yum在安装一共软件的过程中再安装其他
软件,此时yum会报错!

当你不知道你想要下载的软件叫什么名字时
可以无脑百度,百度上还有许多好玩的软件包


使用指令: yum remove 想要卸载的软件

这条命令和下载一样,最好使用sudo
或切换到root账号来操作


4. Linux中的编辑器:vim

vim可以理解为文本编辑器
就像Windows中的写字板一样
vim有大概12种模式,但是常用的有五种
本篇文章只讲解这五种模式

首先我们先创建一个.c文件来写C语言
然后vim此文件进入到vim编辑界面

在这里插入图片描述

vim进入文本编辑后默认是正常模式
正常模式无法输入内容,此时介绍第二种模式
输入模式

正常模式切换到输入模式可以按:a i o
三个键,a键默认定位至你光标的下一个位置
o键默认定位至你光标的下一列开头
然而i键默认定位至你的光标处

此时写一段简单的代码:

在这里插入图片描述

此时想要退出并保存此代码,需要第三个模式:
底行模式

底行模式不能从输入模式跳转
必须从正常模式跳转到底行模式
所以我们要先从输入模式跳转到
正常模式才能再跳转到底行模式

以下流程图帮你理解:

在这里插入图片描述

再来捋一下流程:首先进入文本编辑界面
时是正常模式,想要输入代码先按:a,i,o
切换到输入模式,输完代码后按ESC键
退出到正常模式,再按shift+;跳转到
底行模式进行保存


在这里插入图片描述


5. vim下的底行模式详解

切换到底行模式后,界面左下角有一冒号:

此时就进入到了底行模式,在写代码时
既没有自动换行和括号匹配,也没有行号
非常的不方便,这一点后面会一一解决

设置行号

在底行模式输入: set nu

取消行号

在底行模式输入: set nonu

保存并退出

在底行模式输入: wq

  • w:保存当前文件
  • w!:强制保存
  • q:退出
  • q!:强制退出
  • wq!:强制保存并退出

查找字符

在底行模式输入: /关键字

此关键字会语法高亮出来
若这个关键字不是你想找的内个
可以按n键跳到下一个关键字位置


除此之外,底行模式还有你意想不到的用处
它可以在不退出vim的情况下
输入并执行指令,并且在当前画面显示出来

比如输入:man printf
可以在底行模式查阅字典


6. vim下的正常模式详解(上)

正常模式的所有操作都是在
高效移动光标
请注意,将你的Linux放在旁边
一边看指令一般实践!

定位至代码的第一行

在正常模式下输入: gg

定位至代码的最后一行

在正常模式下输入: shift+g

定位至代码的任意一行

在正常模式下输入: n+shift+g

定位至特点一行的开始

在正常模式下输入: shift+6(^)

定位至特点一行的结尾

在正常模式下输入: shift+4($)

光标的上下左右移动

  • h键 : 左移
  • j键 : 下移
  • k键 : 上移
  • l键 : 右移

现在的键盘将hjkl键和上下左右
分离开来了,但是vim诞生时期较早
那时的键盘没有上下左右键
建议以后使用hjkl移动光标!

在这里插入图片描述

注:使用w和b可以一次性跳过/回退一个单词
若遇见的字符不是单词,则一格一格的跳


7. vim下的正常模式详解(下)

现在我们可以高效的移动光标了
那移动光标是为了啥?当然是为了执行
复制粘贴剪贴删除等操作!

复制当前行或n行

在正常模式输入: yyn+yy

粘贴内容到当前行或粘贴n次

在正常模式输入: pn+p

撤销上一步的操作

在正常模式输入: u

撤销上一步的撤销

在正常模式输入: CTRL + r

删除(剪切)当前行或n行

在正常模式输入: ddn+dd

向后/前剪切n个字符

在正常模式输入: n+小xn+大x

大小写互相转换

在正常模式输入: shift + ` (~)
不断向后转换,大写变小写,小写变大写

你可能会问,这些操作我可以在输入模式
下复制粘贴输入删除等等都可以完成
为什么还有学正常模式下的指令??

因为你这样不够优雅(bushi)
这是因为在熟悉了各个操作后,效率
会大大提升,甚至比在图形化界面还方便


8. vim下的替换模式

这个模式也是我们常用的模式之一
有时候,我们不想删除代码也不想
添加代码,只想在原先的代码上修改
比如将字符x修改为r,我们要先进入
插入模式再删除掉x再输入r,非常的不优雅

转换到替换模式

在正常模式输入: shift+r

在此模式下,所有的输入都会被当作替换!

在这里插入图片描述


9. vim下的视图模式

我们在用vs写代码时想要注释掉一块代码
非常任意,只需要选中所有代码并点击右上角
的一个键即可,但在Linux中,没有可视化界面
所以我们要依赖视图模式来帮助我们注释

切换为视图模式

在正常模式输入: CTRL +v

在左下角显示visual就代表进入了视图模式
先看以下视频来了解怎样注释:

可以总结为,用j,k选中要注释的行
选好后按shift+i进入插入模式
再输入//后按ESC退出,此时代码就被注释掉了

取消注释

进入视图模式,使用hjkl选中要取消注释
的区域,注意这里要选中前两列,否则只会
删除//的第一个/,选好后输入d,即可删除

在这里插入图片描述


10. vim下的多线程操作

vim文本编辑器可以同时打开多个文件
在vim的底行模式下输入:vs 想要打开的文件名
此时就可以打开另外一个文件

在这里插入图片描述

虽然说有多个文件,但是光标只有一个!
光标在哪个文件,现在就在编辑哪个文件

切换文件

使用指令: CRTL + ww

可以切换文件,进行不同的操作
可以在A文件复制内容并且拷贝到B文件


11. 总结以及拓展

Linux下的开发工具的使用主要是
在教大家怎样高效的Linux下进行编程
vim的多种模式大家要一一熟悉,不要依赖
输入模式修改所有代码,一个合格的程序员
vim必须玩的非常6!

本篇文章干货很多,需要下来慢慢记忆

指令大览

yum list
yum list | grep 关键字
yum install ...
yum remove ...
vim 文件名.c
a,i,o进入输入模式
shift + ; 进入底行模式
CTRL + v 进入视图模式
shift + r 进入替换模式
CTRL + ww 切换文件
yy,dd,p,u等指令

vim配置的拓展

可以发现,虽然现在的vim可以写代码
但是写起来非常别扭,因为它没有自动换行
也没有缩进和括号补齐,所以还不是一个
合格的C/C++代码编辑器,我给大家推荐一个
网址,里面有vim配置的全套下载!

网址链接: vimforcpp

在确保你有curl指令的前提下,输入这行代码:
在这里插入图片描述

这时,所有常用的vim配置就下载好了
现在再打开你的.c文件写写代码
会发现现在和vs上写代码基本上是一样的了!


🔎 下期预告:Linux开发工具(下) 🔍

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

批量采集的时间管理与优化

在进行大规模数据采集时,如何合理安排和管理爬取任务的时间成为了每个专业程序员需要面对的挑战。本文将分享一些关于批量采集中时间管理和优化方面的实用技巧,帮助你提升爬虫工作效率。 1. 制定明确目标并设置合适频率 首先要明确自己所需获取数据的范…

2020年12月 C/C++(一级)真题解析#中国电子学会#全国青少年软件编程等级考试

C/C编程(1~8级)全部真题・点这里 第1题:字符三角形 描述 给定一个字符,用它构造一个底边长5个字符,高3个字符的等腰字符三角形。 输入 输入只有一行, 包含一个字符。 输出 该字符构成的等腰三角形&#xff…

人工智能AI 全栈体系(二)

第一章 神经网络是如何实现的 上节描述的网络结构比较特殊,不具有一般性。比如前面我们讲过的权重都是1或者-1,这是很特殊的情况,实际上权重可以是任何数值,可以是正的,也可以是负的,也可以是带小数的。权…

2023-简单点-怎么知道树莓派是什么cpu架构?

树莓派是几位? getconf LONG_BIT https://qengineering.eu/install-ncnn-on-raspberry-pi-4.html

基于大规模MIMO通信系统的半盲信道估计算法matlab性能仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 %EM算法收敛所需的迭代 nIter 1; Yp Y(:,1:L_polit,:); %与导频序列相对应的部分 q…

激活函数总结(三十一):激活函数补充(ELiSH、Hard ELiSH)

激活函数总结(三十一):激活函数补充 1 引言2 激活函数2.1 ELiSH激活函数2.2 Hard ELiSH激活函数 3. 总结 1 引言 在前面的文章中已经介绍了介绍了一系列激活函数 (Sigmoid、Tanh、ReLU、Leaky ReLU、PReLU、Swish、ELU、SELU、GELU、Softmax…

OpenCV(三十六):霍夫直线检测

1.检测直线的霍夫变换原理 2.检测直线函数HoughLines() 检测直线流程: Step1:将参数空间的坐标轴离散化。 Step2:将图像中每个非0像素通过映射关系求取在参数空间通过的方格 Step3:统计参数空间内每个方格出现的次数,选取次数大于某一值的方格作为表示直线的方格…

正中优配:股票出现xd是好还是坏?

近年来,股票市场的日渐成熟和开展使得出资者们关于股票价格的涨跌也愈加灵敏,特别是股票呈现XD之后,更是引起了一系列热议。那么,股票呈现XD是好还是坏?本文将从多个角度进行剖析。 首要,需要清晰XD的定义…

LabVIEW更改Tab所选标签的颜色

LabVIEW更改Tab所选标签的颜色 在开发过程中,有时会出现要将不同tab页设置不同颜色的情况。此VI允许编程方式更改前面板选项卡控件上选项卡的颜色。它是突出显示所选选项卡的理想选择 在某些应用程序中,用户希望在按下时突出显示选项卡控件。此VI使用事…

【科研论文配图绘制】task8 总结与回顾

task8 总结与回顾,这次组队学习大致掌握了常见python绘图工具包的使用,整体上和matlab的语法类似,也是用画布形式控制元素的绘制。印象深刻的是seaborn的使用,在之前做波士顿房价预测时候先接触了seaborn绘制的散点图、直方图和核…

Linux编辑器vim

目录 一、vim的几种模式 1、命令模式 2、编辑/插入模式 3、底行模式 ①增加行号 ②分屏操作 ③不退出vim执行命令 4、替换模式 二、vim的常见命令 1、yy命令 2、p命令 3、dd命令 4、u命令 5、Ctrl r命令 6、shirtg命令 7、gg命令 8、shirt6命令 9、shirt4命…

静态代理和动态代理笔记

总体分为: 1.静态代理: 代理类和被代理类需要实现同一个接口.在代理类中初始化被代理类对象.在代理类的方法中调 用被代理类的方法.可以选择性的在该方法执行前后增加功能或者控制访问 2.动态代理: 在程序执行过程中,实用JDK的反射机制,创建代理对象,并动态的指定要…