Linux开发工具:yum和vim的使用

目录

一. Linux下的软件

1.1 软件安装的三种方法

1.2 采用yum安装软件

1.3 yum源的问题

二. vim开发工具的使用

2.1 vim的三种基本模式

2.2 命令模式下vim的常用指令

2.2.1 定位相关指令

2.2.2 光标移动相关指令

2.2.3 插入相关指令

2.2.4 复制粘贴相关指令

2.2.5 替换和更改相关指令

2.2.6 其他指令

2.3 底行模式下vim的常用指令

2.3 vim的多文件操作

2.4 vim编译和运行程序

三. 通过sudo指令提权


一. Linux下的软件

1.1 软件安装的三种方法

  • 源代码安装 --  安装困难,不适用于普通用户
  • rpm安装 -- rmp相对于Linux下的安装包,需要用户自身去寻找安装源、安装版本,解决安装依赖问题,安装难度依旧较大。
  • yum安装 -- 解决了安装源、安装版本和安装依赖的问题。

yum,类似于手机上的应用商店。

1.2 采用yum安装软件

以lrzsz软件(完成Windows和Liunx之间的文件传输)为例,演示如何采用yum安装和卸载软件。

  • rz -- 从Winowds向Linux传输文件。
  • sz 文件名 -- 将Linux下的文件传输到Windows。
图1.1 使用rzsz实现Linux和Windows的文件互传

三条命令查找并安装软件:

  • yum list -- 打印所有可安装软件列表。
  • yum list | grep 软件名(部分) -- 查找要安装的软件。
  • yum -y install 软件名 -- 安装软件,这里-y选项是不询问是否安装,直接强制安装。

注意:如果使用yum安装已经存在的软件,那么系统会输出Nothing to do。

图1.2 软件查找和安装
  •  软件删除:yum -y remove 软件名

1.3 yum源的问题

我们在使用yum下载软件时,是通过系统内配置的yum源,去查找软件的下载地址,通过网络从远端服务器拉取下载资源,然后下载相应的软件。

  • yum源:/etc/yum.repos.d/

通过指令 ls -l /etc/yum.repos.d/,可以查看/etc/yum.repos.d/目录下的内容如图1.2所示,其中:

  • CentOS-Base.repo -- 官方yum源。
  • CentOS-Epel.repo -- 扩展yum源。
图1.3 LInux内置的yum源

扩展yum源有时候需要用户自行安装:

  • yum -y install epel-release
图1.4 扩展yum源的安装(已存在)

由于Linux为国外开发的操作系统,因此内置的yum源一般为国外的链接,在国内使用下载速度会比较慢,可以进行替换,将国外yum源替换为国内的镜像。

  • vim /etc/yum.repos.d/CentOS-Base.repo -- 具体yum源的查看(国内镜像/国外)
图1.4 使用vim查看具体yum源

二. vim开发工具的使用

vim既可以进行文本编译,也可以写代码,甚至可以编译和运行代码,是一款多模式的编辑器。

2.1 vim的三种基本模式

  • 命令模式(默认) -- 光标位置的切换、赋值粘贴字符/行、删除和替换字符/行,可以从命令模式进入插入模式和底行模式。
  • 插入模式:进行文本编辑,只有在插入模式下才能使用键盘进行文本输入。
  • 底行模式:文本的保存和退出、编译代码、运行代码、查找文件内容等。

三种基本模式间切换的快捷键: 

  • 命令模式 -> 插入模式:i、I、a、A、O、o
  • 插入模式 -> 命令模式:ESC
  • 命令模式 -> 底行模式:Shift + :
  • 底行模式 -> 命令模式:ESC

注意:无法实现底行模式和插入模式的直接切换,必须以命令模式为中介进行切换。

图2.1 vim的三种基本模式及它们之间的切换

2.2 命令模式下vim的常用指令

2.2.1 定位相关指令

指令功能
gg光标定位到首行
Shift + g光标定位到最后一行
n + Shift + g光标定位到第n行
Shift + $定位到光标所在行的行末
Shift + ^定位到光标所在行的行首

2.2.2 光标移动相关指令

指令功能
h光标左移一个字符
j光标下移一行
k光标上移一行
l光标右移一个字符
w以单词为单位右移或跨行移动
b以单词为单位左移或跨行移动

2.2.3 插入相关指令

在命令模式下输入下标中的指令,实现从命令模式到插入模式的切换。

指令功能
i在光标之前插入
I在光标所在行行首插入
a在光标位置之后插入
A在光标所在行的末尾插入
o在光标下方新建一行插入
O在光标上方新建一行插入

2.2.4 复制粘贴相关指令

指令功能
yy复制光标所在行
(n)yy 复制从光标所在行开始向下的n行内容
p粘贴复制内容
(n)p粘贴n行复制内容
(n)dd剪切(删除)n行内容

2.2.5 替换和更改相关指令

指令功能
(n)r + 字符更改从光标位置开始的连续n个字符
Shift + r进入到替换模式
(n)x删除光标之后的连续n个字符

2.2.6 其他指令

指令功能
Shift + ~快速大小写转换
u撤回刚才的操作
Ctrl + r撤回u撤回的操作

2.3 底行模式下vim的常用指令

命令模式 -> 底行模式:shift + :

  • 保存和退出相关指令:
指令功能
q退出
w保存
wq保存并退出
q!强制退出
w!强制保存
wq!强制保存并退出
  • 搜索和设置相关指令
指令功能
set nu显示行号
set nonu取消行号显示
/ 内容内容搜索
图2.2 在底行模式下查找

2.3 vim的多文件操作

  • 在底行模式下,输入指令:vs 文件名 -- 实现多文件操作
图2.3 vim操作多文件界面
  •  Ctrl + ww -- 窗口间的切换
  • 光标在哪个窗口,就对哪个窗口操作

2.4 vim编译和运行程序

  • ! gcc code.c  -- 编译C语言源文件代码
  • ! gcc code.c -std=c99 -- 以c99标准编译C语言源文件代码
  • ! g++ code.cpp -- 编译C++源代码
  • ! g++ code.cpp -std=c++11 -- 以C++11的标准编译C++源代码
  • ! ./a.out(可执行程序文件名) -- 运行代码
图2.4 vim下的代码运行

三. 通过sudo指令提权

在Linux操作系统中,许多指令在默认情况下只有root用户能够使用,如yum安装软件。但是,在实际项目开发中,普通用户也可能需要使用这些指令,那么,就需要通过sodu,对某条特定的指令进行提权。sudo使用方法为:

  • sudo 提权的指令  --> 输入普通用户密码

如图3.1所示,在普通用于zhangHHH下,希望通过sudo指令,以root用户的身份创建文件test.txt,sudo touch test.txt,输入普通用户密码之后,系统提示zhangHHH不在信任用户名单中,禁止使用sudo提权。这是Linux为了避免普通用户滥用管理员权限而设定的保护机制。

图3.1 因不在信任用户名单而不得使用sudo进行提权

如果普通用户zhangHHH想要使用sudo,那就需要root用户将其添加到信任白名单中,信任白名单的路径为:/etc/sudoers, 使用vim /etc/sudoers 打开信任白名单,如图3.2所示,找到100行左右的信任用户位置,将普通用户加入信任名单即可,添加受信任的普通用户即可。

图3.2 将普通用户加入信任白名单

将zhangHHH用户加入信任白名单后,再次使用sudo touch test.txt指令,以root用户的身份创建新文件,指令成功运行,通过ll指令,看到test.txt文件的拥有者和所属组都是root用户,证明该文件以root用户的身份创建。

图3.3 以root用户的身份新建文件
  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值