【linux】yum 和 vim

yum 和 vim

  • [1. Linux 软件包管理器 yum](#1. Linux 软件包管理器 yum)
    • [1.1 什么是软件包](#1.1 什么是软件包)
    • [1.2 查看软件包](#1.2 查看软件包)
    • [1.3 如何安装软件](#1.3 如何安装软件)
    • [1.4 如何卸载软件](#1.4 如何卸载软件)
    • [1.5 关于 rzsz](#1.5 关于 rzsz)
  • [2. Linux编辑器-vim使用](#2. Linux编辑器-vim使用)
    • [2.1 vim的基本概念](#2.1 vim的基本概念)
    • [2.2 vim的基本操作](#2.2 vim的基本操作)
    • [2.3 vim命令模式命令集](#2.3 vim命令模式命令集)
    • [2.4 vim底行模式命令集](#2.4 vim底行模式命令集)
    • [2.5 vim操作总结](#2.5 vim操作总结)
  • [3. 设置让普通用户进行sudo提权步骤](#3. 设置让普通用户进行sudo提权步骤)
  • [4. 简单vim配置](#4. 简单vim配置)

1. Linux 软件包管理器 yum

1.1 什么是软件包

  • 在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序。
    但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好, 做成软件包(可以理解成windows上的安装程序)放在一个服务器上,通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装。
  • 软件包和软件包管理器, 就好比 "App" 和 "应用商店" 这样的关系.
  • yum(Yellow dog Updater, Modified)是Linux下非常常用的一种软件包管理器. 主要应用在Fedora, RedHat, Centos等发行版上.

1.2 查看软件包

通过 yum list 命令可以罗列出当前一共有哪些软件包. 由于包的数目可能非常多, 这里我们需要使用 grep 命令只筛选出我们关注的包,例如:

cpp 复制代码
yum list | grep lrzsz

注意事项:

  • 软件包名称: 主版本号.次版本号.源程序发行号-软件包的发行号.主机平台.cpu架构.
  • "x86_64" 后缀表示64位系统的安装包, "i686" 后缀表示32位系统安装包. 选择包时要和系统匹配.
  • "el7" 表示操作系统发行版的版本. "el7" 表示的是 centos7/redhat7. "el6" 表示 centos6/redhat6.
  • 最后一列, base 表示的是 "软件源" 的名称, 类似于 "小米应用商店", "华为应用商店" 这样的概念.

1.3 如何安装软件

cpp 复制代码
[sudo/root身份] yum install [-y] xxx

yum 会自动找到都有哪些软件包需要下载, 这时候敲 "y" 确认安装.

出现 "complete" 字样, 说明安装完成.

注意事项:

  • 安装软件时由于需要向系统目录中写入内容, 一般需要 sudo 或者切到 root 账户下才能完成.
  • yum安装软件只能一个装完了再装另一个. 正在yum安装一个软件的过程中, 如果再尝试用yum安装另外一个软件, yum会报错.
  • 如果 yum 报错, 请自行百度.

例如:在Linux下安装一个小火车sl指令

运行一下:

1.4 如何卸载软件

cpp 复制代码
[sudo/root身份] yum remove [-y] xxx

补充:

centos中凡是能够直接被用户下载的软件其实已经是一些非常稳定的软件了,但centos每年都会有一些新增的软件,它们又没有被测试过,稳定性还存疑,所以不能直接更新到yum软件包集合里,所以yum会提供两个软件源,一个是base(基本软件源,很稳定),另一个是epel(扩展软件源,稳定性尚未可知)。当epel里的软件经过一段时间使用测试后,稳定性已有保障,就会被更新到base软件源中,使base软件源得以扩充。

一般来说系统都会有一个基本软件源,但扩展软件源需要自行安装,安装指令为:

cpp 复制代码
yum -y install -y epel-release

我已经安装过了,所以他会提示我已安装到最新。(而且上面安装可能需要root权限)

可通过ls /etc/yum.repos.d/指令查看当前系统的软件源:

也可以通过vim /etc/yum.repos.d/CentOS-Base.repo指令查看软件源内置的软件下载地址链接:

1.5 关于 rzsz

这个工具用于 windows 机器和远端的 Linux 机器通过 XShell 传输文件.

安装完毕之后可以通过拖拽的方式将文件上传过去.

需要先安装lrzsz包:

cpp 复制代码
 sudo yum install lrzsz

rzsz包括以下两个命令:

  1. rz:这是一个接收(receive)命令,允许用户从本地Windows或其他支持ZModem协议的系统通过SSH或Telnet会话上传文件到Linux服务器。当你在终端中运行rz命令时,会在本地系统打开一个文件选择对话框,你可以从中选择要上传的文件,然后这些文件会被按照ZModem协议高效地传输到Linux服务器。
  2. sz:这是一个发送(send)命令,作用与rz相反,它允许用户从Linux服务器上下载文件到本地支持ZModem协议的系统。运行sz filename命令将会把服务器上的指定文件传输到本地机器。

注意事项 :

关于 yum 的所有操作必须保证主机(虚拟机)网络畅通!!!

可以通过 ping 指令验证:

cpp 复制代码
ping www.baidu.com

2. Linux编辑器-vim使用

vi/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。例如语法加亮,可视化操作不仅可以在终端运行,也可以运行于x window、 mac os、windows。

2.1 vim的基本概念

我们主要介绍vim的三种模式,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:

  • 正常/普通/命令模式(Normal mode)

控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入插入模式下,或者到底行模式

  • 插入模式(Insert mode)

只有在插入模式下,才可以做文字输入,按「ESC」键可回到命令行模式。该模式是我们后面用的最频繁的编辑模式。

  • 末行/底行模式(last line mode)

文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下,shift+; 即可进入该模式。要查看你的所有模式:打开vim,底行模式直接输入:help vim-modes

2.2 vim的基本操作

  • [命令模式]切换至[插入模式]
  • 输入a
  • 输入i
  • 输入o
  • [插入模式]切换至[命令模式]
  • 按一下「ESC」键转到[命令模式]。
  • [命令模式]切换至[底行模式]
  • 「shift + ;」, 其实就是输入「:」
  • 退出vim及保存文件,在[命令模式]下,按一下「:」冒号键进入底行模式,例如:
  • : w (保存当前文件)
  • : wq (输入「wq」,存盘并退出vim)
  • : q! (输入q!,不存盘强制退出vim)

2.3 vim命令模式命令集

  • 「i」切换进入插入模式「insert mode」,按i进入插入模式后是从光标当前位置开始输入文件;
  • 「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;
  • 「o」进入插入模式后,是插入新的一行,从行首开始输入文字。
  • 「ESC」键:从插入模式切换为命令模式
  • n+ yy:复制当前行 ------ n: 连续复制n行
  • n+p:粘贴,当前光标的下一行 ------ n: 表示把指定内容粘贴n次
  • u:撤销
  • ctrl+r: 对历史撤销,进行撤销(反撤销)
  • n + dd:剪切/删除指定行、连续的多行
  • shift+4= $:将光标定位到当前行的结尾
  • shift+ 6=^:将光标定位到当前行的开始
  • gg:将光标定位到整个文本的最开头
  • shift+g = G:将光标定位到整个文本的最后一行
  • n+ shift +g=nG:将光标定位到整个文本任意一行
  • h,j,k,l:左,下,上,右,也可以带n
  • w:按照单词为单位进行光标后移
  • b:按照单词为单位进行光标前移
  • ~:对文本内容进行大小写快速切换
  • n+x:删除光标后续的一个字符,可以一次删除n个 ------ 一行内
  • n + shift+x=X:删除光标之前的一个字符,可以一次删除n个 ------ 一行内
  • n+r:对光标指定的位置, 进行一个字符的替换,可以一次替换多个
  • shift+r=R: 进入替换模式,直接进行文本替换
  • shift+zz=ZZ:保存并退出

注意:上述命令集当中的n表示具体数字

2.4 vim底行模式命令集

在使用末行模式之前,请记住先按「ESC」键确定您已经处于命令模式,再按「:」冒号即可进入底行模式。

  • w:保存
  • q:退出
  • wq:保存并退出
  • !:强制
  • q!:不保存退出
  • set nu:打开行号,
  • nonu:去掉行号
  • /关键字:做搜索,搜索关键字
  • !command:不退出vim,可以进行shell命令的执行,常用函数查看
  • vs filename:分屏,多文件操作

2.5 vim操作总结

补充:vim下批量化注释和批量化去注释的方法

  • 批量化注释:
  • 批量化去注释:

3. 设置让普通用户进行sudo提权步骤

sudo即无需切换用户身份,允许用户以root权限执行命令。在使用前需提前配置。

提权步骤:

4. 简单vim配置

配置文件的位置:

  • 在目录 /etc/ 下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效。
  • 而在每个用户的主目录下,都可以自己建立私有的配置文件,命名为:".vimrc"。例如,/root目录下,通常已经存在一个.vimrc文件,如果不存在,则创建之。(vim在执行时会读取这个.vimrc的隐藏文件,一些vim的基本配置就可以写入这个.vimrc文件中,vim执行时自动读取)
  • 切换用户成为自己进入自己的主工作目录,执行 cd ~
  • 打开自己目录下的.vimrc文件,执行 vim .vimrc写入配置

例如:向vim中写入打印行号的配置:

除了打印行号还可以去百度上搜索一些更好用的vim配置,写入方法都是一样的。

下面再推荐一种简单的一键配置方法:

参考资料:
Vim 从入门到精通

相关推荐
woshilys25 分钟前
sql server 查询对象的修改时间
运维·数据库·sqlserver
疯狂飙车的蜗牛1 小时前
从零玩转CanMV-K230(4)-小核Linux驱动开发参考
linux·运维·驱动开发
恩爸编程2 小时前
探索 Nginx:Web 世界的幕后英雄
运维·nginx·nginx反向代理·nginx是什么·nginx静态资源服务器·nginx服务器·nginx解决哪些问题
Michaelwubo3 小时前
Docker dockerfile镜像编码 centos7
运维·docker·容器
远游客07133 小时前
centos stream 8下载安装遇到的坑
linux·服务器·centos
马甲是掉不了一点的<.<3 小时前
本地电脑使用命令行上传文件至远程服务器
linux·scp·cmd·远程文件上传
jingyu飞鸟3 小时前
centos-stream9系统安装docker
linux·docker·centos
好像是个likun3 小时前
使用docker拉取镜像很慢或者总是超时的问题
运维·docker·容器
超爱吃士力架4 小时前
邀请逻辑
java·linux·后端
cominglately6 小时前
centos单机部署seata
linux·运维·centos