一、Linux软件包管理
1. 什么是软件包?
在Linux下安装软件,一种常见的方法是下载程序的源代码,并进行编译,得到可执行程序。然而,这种方法既耗时又繁琐。为了方便,人们将一些常用的软件提前编译好,做成软件包,存放在服务器上。通过包管理器,用户可以方便地获取这些编译好的软件包,直接进行安装。
2. 软件包和软件包管理器
软件包和软件包管理器之间的关系,类似于“App”和“应用商店”。Linux中有多种软件包管理器,yum
是其中非常常用的一种。
- yum(Yellow dog Updater, Modified):主要应用于Fedora、RedHat、CentOS等发行版。
3. yum的使用
注意事项
- 使用yum的所有操作必须保证主机(虚拟机)网络畅通,可以通过
ping
命令验证。
查看软件包
使用yum list
命令可以罗列出当前可用的软件包。由于包的数量可能非常多,可以使用grep
命令筛选关注的包。
bash复制代码yum list | grep lrzsz
输出示例:
复制代码lrzsz.x86_64 0.12.20-36.el7 @base
软件包名称解释:
lrzsz
:软件包名称0.12.20
:主版本号36.el7
:次版本号.源程序发行号-软件包的发行号x86_64
:主机平台.CPU架构(64位系统安装包)base
:软件源名称
安装软件
使用yum install
命令安装软件,例如安装gcc
:
bash复制代码sudo yum install gcc
yum会自动找到并下载所有依赖的软件包,确认安装后敲“y”。
卸载软件
使用yum remove
命令卸载软件,例如卸载lrzsz
:
bash复制代码sudo yum remove lrzsz
注意:安装软件时需要向系统目录中写入内容,一般需要sudo
权限或切换到root
账户。
切换软件源
切换软件源本质上是更改配置文件。例如,将CentOS 7的yum镜像源切换到163镜像源:
操作清单:
- 备份原配置文件:
bash复制代码sudo cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
- 下载新的配置文件:
bash复制代码sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo
- 清理yum缓存并更新:
sudo yum clean all
sudo yum makecache
二、Linux编辑器——Vim
Vim是一个强大的文本编辑器,广泛用于编写和修改配置文件。Vim有多种模式,下面介绍三种核心模式:
1. Vim的三种模式
- 命令模式(Command Mode):控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入插入模式或底行模式。
- 插入模式(Insert Mode):只有在此模式下,才可以进行文字输入。按
ESC
键可回到命令模式。 - 底行模式(Last Line Mode):文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。在命令模式下,按
Shift + :
即可进入该模式。
2. Vim的基本操作
进入Vim
bash复制代码vim test.c
进入Vim后,默认处于命令模式。
模式切换
- 命令模式切换到插入模式:
i
:在当前光标位置开始插入。a
:在当前光标位置的下一个字符开始插入。o
:在当前行的下一行开始插入。
- 插入模式切换到命令模式:按
ESC
键。 - 命令模式切换到底行模式:按
Shift + :
。
移动光标
h
:光标左移一格。j
:光标下移一格。k
:光标上移一格。l
:光标右移一格。G
:移动到文章最后。$
:移动到光标所在行的行尾。^
:移动到光标所在行的行首。w
:光标跳到下一个字的开头。e
:光标跳到下一个字的字尾。b
:光标回到上一个字的开头。gg
:移动到文本开始。Shift + G
:移动到文本末端。Ctrl + b
:屏幕往后移动一页。Ctrl + f
:屏幕往前移动一页。Ctrl + u
:屏幕往后移动半页。Ctrl + d
:屏幕往前移动半页。
删除文字
x
:删除光标所在位置的一个字符。#x
:例如6x
,表示删除光标所在位置的后面6个字符。X
:删除光标所在位置的前一个字符。#X
:例如20X
,表示删除光标所在位置的前面20个字符。dd
:删除光标所在行。#dd
:从光标所在行开始删除#行。
复制与粘贴
yw
:将光标所在之处到字尾的字符复制到缓冲区中。#yw
:复制#个字到缓冲区。yy
:复制光标所在行到缓冲区。#yy
:例如6yy
,表示拷贝从光标所在的该行往下数6行文字。p
:将缓冲区内的字符贴到光标所在位置。
替换
r
:替换光标所在处的字符。R
:替换光标所到之处的字符,直到按下ESC
键为止。
撤销与重做
u
:撤销上一次操作。Ctrl + r
:撤销的恢复更改。
查找与替换
/关键字
:从当前光标位置向后查找。?关键字
:从当前光标位置向前查找。
末行模式命令集
set nu
:在文件中的每一行前面列出行号。#G
:例如15G
,表示移动光标至文章的第15行行首。:w
:保存当前文件。:wq
:保存并退出Vim。:q!
:不保存强制退出Vim。
批量化注释
- 批量注释(适用于 C/Java/JS 等语言)
- 块选择模式:
Ctrl + v
进入可视块模式 - 选择行范围:用
j/k
或10j
(向下选10行)快速选中多 - 插入注释符:按
Shift + i
进入插入模式
输入注释符:输入//
(不同语言可能用 # 或 ")
生效操作:按Esc
(需等待 1-2 秒,Vim 会将操作应用到所有选中行)
- 块选择模式:
注意:若操作后只有首行被注释,说明未正确退出插入模式,需确保按 Esc
后看到所有行同步变化
- 批量去注释(需精确列选择)
- 块选择模式:
Ctrl + v
- 精准选中注释符:用
l
或h
横向移动光标,确保只选中注释符(如//
) - 删除操作:按
d
或x
(若选中单列)
- 块选择模式:
注意:若注释前有不定量空格,建议先用:left
命令对齐代码,或用正则替换更高效
文件级别的对比:vs
光标在两个屏幕终端之间进行移动:ctrl +ww
3. Vim配置
Vim的配置文件位于/etc/vimrc
(公共配置文件)和用户主目录下的.vimrc
(私有配置文件)。
常用配置选项
syntax on
:启用语法高亮。set nu
:显示行号。set shiftwidth=4
:设置缩进的空格数为4。
插件安装
- TagList插件:提供代码标签的浏览功能。
- WinManager插件:提供文件浏览器和窗口管理器功能。
安装插件步骤:
例如,安装TagList插件后,在~/.vimrc
中添加:
vim">let Tlist_Show_One_File=1
let Tlist_Exit_OnlyWindow=1
let Tlist_Use_Right_Window=1
安装WinManager插件后,在~/.vimrc
中添加:
vim">let g:winManagerWindowLayout='FileExplorer|TagList'
nmap wm :WMToggle<cr>
重启Vim后,在命令模式下输入wm
即可看到效果。
三、总结
最后,要说的是我们在学习和使用 Linux 软件包管理器及编辑器时,要多进行实践操作,熟悉各个命令的使用方法。同时,可参考相关书籍和在线资源,不断拓展知识面,提高操作技能。