linux的工具(yum,vim)

news2024/9/19 11:08:36

前言

linux工具的意义
Linux已经成为工作、娱乐和个人生活等多个领域的支柱,人们已经越来越离不开它。在 Linux 的帮助下,技术的变革速度超出了人们的想象, Linux 开发的速度也以指数规模增长。因此,越来越多的开发者也不断地加入开源和学习 Linux 开发地潮流当中。在这个过程之中,合适的工具是必不可少的,可喜的是,随着 Linux的发展,大量适用于 Linux的开发工具也不断成熟。甚至可以说,这样的工具已经多得有点惊人。为了选择更合适自己的开发工具,缩小选择范围是很必要的。下面我们来看一下

工具一:软件包管理器yum

什们是软件包?
在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序.
但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好, 做成 软件包(可以理解成windows上的安装程序)放在一个服务器上, 通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装.

所以可以这样理解,软件包和软件包管理器, 就好比 “App” 和 “应用商店” 这样的关系. 其实我们的yum工具就是我们手机上的应用市场。就是下载东西的地方。

yum的使用
我们在使用 yum的时候,一般都是下载一份,我们所有的用户都可以使用,所以我们在下载的时候我们一般要用 root用户下载,或者在使用 yum的时候,前面放上 sodu.
yum使用的三板斧
1.搜索 yum list | grep XXX,就是相当于在应用商场找我们要下载的软件。
2.安装 yum -y install XXX,这步骤就是相当于安装应用。
3.卸载 yum -y remove XXX,这个步骤就是相当于卸载应用。
在我们的软件商店,它怎么知道要到哪里下载呢???
这些软件商店必须知道各个软件的下载地址!一般都是内置下载链接的地址(配置文件)
yum怎么知道我要下载的软件在哪里呢?
yum有自己的配置文件---- yum源!
就在 ls /etc/yum.repos.d/
更新 yum
1.先进行备份老的 yumCentos-Base.repo
2. wgef 获取新的 yum源配置文件 – 可以通过网络搜索得到 – centos 7是非常成熟的平台
3. mv重命名成为 Centos-Base.repo
4. yum clean all && yum makecache形成新的缓存。
注意
如果我们可以日常的使用,我们就用,等我们后面掌握的东西多了,我们在自己安装配置就跟容易了

工具二:linux文本编辑器-vim

(1)vim最小集

vim是一款多模式的编辑器。我们就要学习各个模式的用法和差别,以及各个模式的互相切换,我们最常用的就是3~5个模式

vim就是一个单纯的编辑器。每个模式的相互转换请看下图。

默认打开vim的时候就是命令模式。
我们随便去输入,我们就没有反应。

我们如果想输入,我们就要变成插入模式。按i就从命令模式,我们就变成了插入模式。
我们怎么从插入模式变为命令模式呢?我们无脑ESC
如果我们想要退出vim,就要进入到低行模式,输入shift :,就进入低行模式,然后输入wq,就是保存并退出,w就是保存,q就是退出。

注意事项
  1. 如果你不知道自己在什们模式下,就无脑ESC,就会回到命令模式,在命令模式下,我们可以随便进行模式切换。
  1. 退出的时候,一般都是先保存,然后在退出wq
  2. 我们在vim中不要用鼠标翻动,我们都用键盘就可以了。

(2)vim指令集

我们的大部分指令,大部分都在命令模式下进行的,如果不在命令模式下,我会提前说的。

<1>低行模式下,调出和去掉行号

我们先进入低行模式,才可以显示行号。
set nu,就显示行号。
在这里插入图片描述
set nonu,就去掉行号。

再低行模式下,也可以查找,我们就可以/+查找的东西,文件的东西就被高亮出来了

在低行模式下,我们也可以进行替换
%s/需要替换的东西/最后替换的东西/g

!+命令,就可以直接执行命令

<2>复制,粘贴

yy/n+yy: 复制当前行或者当前行在内的指定若干行。
p/n+p: 粘贴一行或者多行相同的内容到当前光标所在行之下。(n表示数字)

<3>撤销

u: 撤销刚刚的操作
CTRL + r :对刚刚撤销的操作撤销

就算我们保存了,我们还是可以撤销,但是当我们退出了,就不可以撤销了

<4>剪切

dd/n+dd: 对当前行,或者当前行在内的n行的内容进行剪切。在pp就粘贴了
如果只进行dd或者ndd,就是删除.

<5>光标移动

shift+g: 其实就是G,将光标定位到文档的最结尾
gg:将光标定位到文档的最开始。
n+shift+g: 将光标定位到指定行。注意在我们输入n的时候,命令模式下不进行显示,但是输入的已经放到缓冲区了。

shift +4:其实就是$,将光标定位到文档行的结尾
shift +6:其实就是^,将光标定位到文档行的最开始
n + w /n + b:按照单词为单位先前先后移动,w就是向前,b就是想后,就是带n的话就是将该文本行向前或向后移动n个单词。

<6>大小写切换

shift + ~: 将大写字符变为小写字符,小写字符变成大写字符。
按住shift不动,然后按一下~切换一下。

<7>替换光标所在字符

r/nr: 替换光标的所在字符

如果想替换更多的东西,我们可以进入替换模式,然后光标在哪就替换那个。
按住shift + r,就进入替换模式,然后我们就可以进行替换了,如果我们想回到命令模式,我们就无脑ESC就可以。

<8>行内删除

n+x : 行内删除,从左侧向右侧删
n+shift+x: 行内删除,从右侧向左侧删

<9>光标上下左右移动

h:左,hjkl,h在键盘的最左侧
j:下,jump就是跳的意思,就是往下跳,所以就是下
k:上,king,国王就是高高在上的,所以就是上
l:右,hjkl,在键盘的最右侧

<10>创建文件

在低行模式下输入
vs+file:就可以创建一个新的文件,进行分屏操作

vim分屏模式下,光标在哪里,我们就在编写哪一个文件。
光标怎么来回切换
ctrl+ w+ww快速按两遍。互相这件可以互相复制粘贴。

那怎么退出了
光标在哪里,我们就退那个文件,我们在低行模式中输入wq就可以,如果需要强制退出,我们就可以输入!wqm,我们就退出了。

(3)vim配置

我们在配置的时候,vim在启动的时候,会自动在当前目录下,寻址配置文件,如果没有,就是默认。/home/vimtest
一个用户,一个vim配置,我们所作的配置,不会影响其他人。

自动化配置
我们自动化配置,是我们比特的老师给大家配置的,直接在 Xshell中输入下面的链接就好了 curl -sLf https://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh -o ./install.sh && bash ./install.sh
直接下载就行了,大家其他的不用管。

总结

其实对我们来说,这个工具很常用,因此我们需要多多练习,其中的指令也很多,我们一定要多多练习。才能孰能生巧。一起加油!!!

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

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

相关文章

pycharm远程链接服务器配置

拿到gpu的节点以后开始下面的配置 1. 下载专业版pycharm&#xff0c;一定是专业版&#xff0c;community版本没有远程连接ssh的功能。 2. python编译器->添加ssh编译器->新创建服务器配置 3. 输入host名&#xff0c;用户名。 host名字如&#xff1a;vpcc-gpu032&#xf…

【自学Docker】Docker wait命令

Docker wait命令 大纲 docker wait教程 docker wait 命令可以用于阻塞一个或多个 Docker容器 直到容器停止&#xff0c;然后打印退出代码。 docker wait命令后面的 CONTAINER 可以是容器Id&#xff0c;或者是容器名。 docker wait语法 haicoder(www.haicoder.net)# docker…

基于蒙特卡洛随机潮流研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

代码审计-8 ThinkPHP框架代码审计 2

文章目录熟悉网站结构确定网站的路由1.通过分析url直接得出路由2.查看app/route.php了解参数过滤情况SQL注入举例任意文件下载与删除任意文件下载代码分析任意文件删除代码分析熟悉网站结构 首先对系统的功能点进行大致的了解&#xff0c;对系统的目录情况进行大致了解&#x…

9. 列表list类型详解

python3 list类型的使用 1. 基本知识 List&#xff08;列表&#xff09; 是 Python 中使用最频繁的数据类型。 列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同&#xff0c;它支持数字&#xff0c;字符串甚至可以包含列表&#xff08;所谓嵌套&#xff…

全球化商家平台技术探索与演进

作者&#xff1a;马金金 阿里全球化业务平台团队 全球化业务高速发展给平台技术带来了极大的挑战。如何差异化支撑全局业务的高效迭代&#xff1f;如何轻量化支撑创新业务的快速建站&#xff1f;本文将聚焦全球化商家平台技术架构演进&#xff0c;为大家分享背后的技术思考。 一…

Understanding LSTM Networks

文章目录Recurrent Neural NetworksThe Problem of Long-Term DependenciesLSTM NetworksThe Core Idea Behind LSTMs.Step-by-Step LSTM Walk Through本篇文章记述了自己对“Understanding LSTM Networks”的理解 Recurrent Neural Networks Humans don’t start their thin…

springmvc统一日志打印request和response内容

在web项目中&#xff0c;有不少场景需要统一处理一些和实际业务基本不相关的逻辑&#xff0c;比如rest接口的监控、出入参日志、操作记录、统一异常处理(避免将错误堆栈等信息直接打到web端)。如果你觉得日志打印rest接口出入参非常简单&#xff0c;直接getParameter()就好了&a…

Redis6学习笔记【part4】Jedis-API与手机验证码功能实现

1.连接 Jedis 第一步&#xff0c;修改 redis 的配置&#xff0c;以允许外网 ip 访问 redis。 在 redis.conf 中注释掉 bind 127.0.0.1 &#xff0c;并修改 protected-mode no 。 第二步&#xff0c;导入依赖。 <dependency><groupId>redis.clients</groupId…

Unity 进阶 之 资源文件夹下资源名的重名检查,并简单生产资源表的方法整理

Unity 进阶 之 资源文件夹下资源名的重名检查,并简单生产资源表的方法整理 目录 Unity 进阶 之 资源文件夹下资源名的重名检查,并简单生产资源表的方法整理 一、简单介绍 二、简单实现过程 三、关键代码 一、简单介绍 Unity中的一些知识点整理。 本节简单介绍在Unity开发…

python使用sentinelsat库下载sentinel影像数据

GIS遥感不分家&#xff0c;最近开始找一些影像的下载脚本了&#xff0c;这两天搞定了哨兵和modis的&#xff0c;分别贴一下 鉴于《Python中使用sentinelsat包自动下载Sentinel系列数据》这篇文章已经写得非常全乎&#xff0c;这里就简单补充一下&#xff0c;放个最简单的下载脚…

Vue CLI(Vue.js 开发的标准工具)

Vue CLI&#xff08;Vue.js 开发的标准工具&#xff09;参考描述Vue CLI获取检测项目创建项目Please pick a presetCheck the features needed for your projectChoose a version of Vue.jsPrefer placing configSave this as a preset for future projects?Save preset asFin…

[MRCTF2020]Ezaudit(随机数的安全)

目录 信息收集 代码审计 相关函数 前提知识 思路分析 补充知识 信息收集 查看源代码没有发现有用信息&#xff0c;尝试dirmap扫下目录 python3 dirmap.py -i 网址 -lcf 扫描时发现一个www.zip目录 下载到一份index.php文件&#xff0c;找到一个login.html <?php h…

docker安装pg数据库及pg数据库基本操作

一、首先准备pg数据库的docker镜像二、先创建一个文件作为pg数据库数据文件、配置文件等的外部挂载文件三、创建镜像docker run -it -d --name postgres14 --restartalways --privilegedtrue -p 5432:5432 -e POSTGRES_PASSWORDpostgres -v /home/fengyang/pg_data:/var/lib/po…

SpringBoot+VUE前后端分离项目学习笔记 - 【25 SpringBoot实现1对1、1对多、多对多关联查询】

新增课程Course页面&#xff0c;实现学生选课功能、课程教授老师选择等功能 1. 课程与授课老师是一对一关系 因为course表仅记录了teacherid&#xff0c;而页面需要的是老师的名字 select course.*,sys_user.id from course left join sys_user **on ** course.teacher_id sys…

第六章SpringFramework之声明事务

文章目录JdbcTemplate准备工作导入依赖创建jdbc.properties配置Spring的配置文件配置测试类的环境实例声明式事务概念先看看对应的编程式事务声明式事务通过一个案例了解声明式事务前提准备三层架构的构建模拟场景的情况添加事务Spring声明式事务的属性事务注解标识的位置事务属…

手把手教你学51单片机-点亮你的LED

单片机内部资源 Flash——程序存储空间。对于单片机来说 Flash 最大的意义是断电后数据 不丢失。 RAM——数据存储空间。RAM 是单片机的数据存储空间,用来存储程序运行过程中产生的和需要的数据,关电后数据丢失 SFR——特殊功能寄存器。通过对特殊工程寄存器读写操作,可以…

循环语句(循环结构)——“C”

各位CSDN的uu们好呀&#xff0c;我又来啦&#xff0c;今天&#xff0c;小雅兰给大家介绍的是一个知识点&#xff0c;就是循环语句啦&#xff0c;包括while循环、do-while循环、for循环&#xff0c;话不多说&#xff0c;让我们一起进入循环结构的世界吧 首先&#xff0c;我们先来…

利用Python暴力破解邻居家WiFi密码

如觉得博主文章写的不错或对你有所帮助的话&#xff0c;还望大家多多支持呀&#xff01;关注、点赞、收藏、评论。 文章目录一、编写代码二、展示测试结果三、测试四、生成密码本&#xff08;建议自己找一个密码本&#xff09;一、编写代码 在桌面新建一个文件 如果你新建的文…

如何实现everything的http外网访问

Everything是voidtools开发的一款文件搜索工具&#xff0c;官网描述为“基于名称快速定位文件和文件夹。”可以实现快速文件索引、快速搜索、最小资源使用、便于文件分享等功能。 everything部署本地后&#xff0c;可以开启配置Http访问功能&#xff0c;这样在局域网内就可以直…