答案是安装vim-enhanced包可解决CentOS中vi功能简陋问题。CentOS默认预装vim-minimal,仅提供基础编辑功能,需通过yum或dnf安装vim-enhanced以获得语法高亮、多级撤销、分屏等完整Vim功能。

在CentOS系统下安装vi编辑器其实通常不是一个“安装”动作,因为绝大多数CentOS版本,包括其基础镜像,都会预装一个简化版的vi,通常是
vim-minimal
或者指向它的符号链接。如果你发现它功能过于基础,比如没有语法高亮,那么你真正需要的是安装功能更强大的
vim-enhanced
版本。这个过程非常直接,只需通过系统的包管理器(
yum
或
dnf
)执行一个简单的命令即可。
解决方案
如果你想在CentOS上确保拥有一个功能完整的vi(即Vim),或者你的系统确实缺失了,以下是具体的步骤:
检查当前vi版本:在终端输入
vi --version
或者
which vi
。如果
vi
命令可用,通常会显示其版本信息,或者指出它是一个指向
vim
或
nvi
的符号链接。如果提示
command not found
,那确实需要安装。
安装或升级到Vim增强版:CentOS 7及更早版本,或者那些依然使用
yum
作为主要包管理器的系统:
sudo yum install vim-enhanced
CentOS 8及更新版本,或者那些切换到
dnf
的系统:
sudo dnf install vim-enhanced
执行命令后,系统会提示你确认安装,输入
y
并回车即可。这个包会替换掉可能存在的
vim-minimal
,提供一个功能更丰富的Vim版本。
验证安装:安装完成后,再次输入
vi
或
vim
。你会发现编辑器启动时可能会显示Vim的版本信息,并且在编辑文件时,如Shell脚本或Python代码,会看到语法高亮。
CentOS系统为什么自带的vi用起来有些“简陋”?Vim和Vi究竟有什么区别?
这个问题问得很好,也是很多初学者甚至有经验的Linux用户会感到困惑的地方。我个人在刚接触Linux时,也曾被这个“简陋”的vi搞得一头雾水,总觉得是不是自己哪里没配置好。
其实,CentOS默认提供的
vi
,很多时候并不是我们常说的那个功能强大的
vim
(Vi IMproved)。它通常是一个指向
vim-minimal
或者更原始的
nvi
的符号链接。这个“简陋”版本的设计初衷是为了尽可能地小巧、快速,占用最少的系统资源,这对于服务器环境来说非常重要,尤其是在系统资源紧张或者需要进行紧急修复时。它能保证你在一个几乎“裸奔”的系统上也能进行最基本的文本编辑。
那么,
vi
和
vim
究竟有什么区别呢?简单来说,
vim
是
vi
的“升级版”或“增强版”,正如其名“Vi IMproved”。
vi
是上世纪70年代末期诞生的经典文本编辑器,它的核心理念是“模态编辑”,即有命令模式、插入模式等。这种模式切换在当时是非常高效的,但功能相对单一。
vim
在此基础上进行了巨大的扩展和改进:
语法高亮: 这是最直观的区别,让代码和配置文件更易读。多级撤销/重做:
vi
通常只能撤销最后一次操作,
vim
则可以无限次撤销。可视模式(Visual Mode): 允许你像在图形界面编辑器中那样选中一块文本进行操作。分屏编辑: 可以在一个终端窗口中同时打开并编辑多个文件。宏录制与回放: 录制一系列按键操作并重复执行,极大地提高了重复性任务的效率。插件系统:
vim
拥有庞大的插件生态,可以扩展出无数功能,从代码补全到文件管理,无所不能。正则表达式增强: 搜索和替换功能更加强大。
所以,当你觉得
vi
用起来“简陋”时,其实你是在期待
vim
的功能。一旦安装了
vim-enhanced
,你会发现它完全是另一个世界。对于日常开发和管理工作,我几乎不会选择使用
vim-minimal
,因为
vim-enhanced
带来的效率提升是巨大的,那点额外的磁盘空间和内存占用完全值得。
安装Vim后,如何快速上手进行文件编辑和保存?
Vim的模态编辑是它最核心也最让人“望而生畏”的特性。初次接触,很多人会卡在“怎么输入文字”、“怎么保存退出”这些基本操作上。别急,我们一步步来。理解了这几个模式和基本命令,你就能在Vim的世界里迈出第一步了。
Vim主要有以下几个模式:
普通模式(Normal Mode/命令模式): 这是Vim启动时的默认模式。在这个模式下,你不能直接输入文本,而是通过各种按键来执行命令,比如移动光标、删除行、复制粘贴等。插入模式(Insert Mode): 在普通模式下,按下特定的键(如
i
,
a
,
o
等)就可以进入插入模式。在这个模式下,你就可以像在普通文本编辑器里一样输入文字了。末行模式(Command-line Mode): 在普通模式下,按下冒号
:
,Vim会在屏幕底部显示一个命令行提示符,你可以在这里输入各种命令,比如保存、退出、查找、替换等。可视模式(Visual Mode): 在普通模式下,按下
v
(字符)、
v
(行)或
Ctrl+v
(块),可以进入可视模式,用于选中文本。
快速上手编辑和保存:
打开/创建文件:在终端输入
vim filename
。如果
filename
存在,则打开;如果不存在,则创建一个新文件。
进入插入模式(开始输入文字):文件打开后,你处于普通模式。
按下
i
:在当前光标位置前插入。按下
a
:在当前光标位置后插入。按下
o
:在当前行下方新建一行并插入。按下
o
:在当前行上方新建一行并插入。选择其中一个,然后你就可以自由输入文字了。
退出插入模式(回到普通模式):无论何时,只要你想停止输入文字,执行命令,就按下键盘左上角的
Esc
键。你会发现光标可能会变粗,表示回到了普通模式。
保存文件:在普通模式下,按下
:
(进入末行模式),然后输入
w
(write),回车。
:w
这样就保存了文件,但不会退出Vim。
保存并退出:在普通模式下,按下
:
,然后输入
wq
(write and quit),回车。
:wq
或者,你也可以在普通模式下直接按下
ZZ
(大写Z两次),这同样会保存并退出。
不保存退出:如果你做了修改但不想保存,想直接退出:在普通模式下,按下
:
,然后输入
q!
(quit forcefully),回车。
:q!
这个命令会强制退出,不保存任何修改。
光标移动(在普通模式下):
h
:左移
j
:下移
k
:上移
l
:右移
w
:跳到下一个单词开头
b
:跳到上一个单词开头
0
:跳到行首
$
:跳到行尾
gg
:跳到文件开头
G
:跳到文件结尾
数字G
:跳到指定行(例如
10G
跳到第10行)
Vim的哲学是“手不离键盘”,一旦你习惯了这些模式切换和命令,你会发现它的编辑效率是惊人的。刚开始可能会觉得有些反直觉,但坚持下去,你会发现它能让你沉浸在编辑中,效率远超鼠标点击。
Vim有哪些实用的高级功能或配置技巧能提升我的工作效率?
Vim的强大之处远不止基本的编辑和保存,它的可配置性和丰富的特性是提升工作效率的关键。一个精心配置的
.vimrc
文件,加上一些常用技巧,能让你的Vim变成一个高度定制化的开发环境。
1. 配置文件
.vimrc
:你的Vim个性化工作室
Vim的所有高级配置都集中在用户主目录下的
.vimrc
文件中。如果文件不存在,你可以自己创建一个。
AI图像编辑器
使用文本提示编辑、变换和增强照片
46 查看详情
touch ~/.vimrcvim ~/.vimrc
一些我个人觉得非常实用的配置项:
显示行号:
set nu " 或者 set number
这几乎是我打开任何Vim的第一件事,方便定位和参考。
语法高亮:
syntax on
让代码和配置文件变得五彩斑斓,大大提升可读性。
设置缩进:
set tabstop=4 " 设置Tab键的宽度为4个空格set shiftwidth=4 " 自动缩进的宽度为4个空格set expandtab " 将Tab键转换为空格
统一代码风格,避免Tab和空格混用造成的混乱。
自动缩进:
set autoindentset smartindent
当你敲回车时,新行会自动继承上一行的缩进,写代码时非常方便。
搜索结果高亮:
set hlsearchset incsearch
hlsearch
让所有匹配项高亮,
incsearch
则在输入搜索词时实时显示匹配。
文件类型识别与插件:
filetype plugin indent on
这行配置非常重要,它让Vim能根据文件类型加载相应的插件和缩进规则,比如Python文件有Python的缩进,C++文件有C++的。
光标行高亮:
set cursorline
高亮显示当前光标所在的行,方便阅读。
这些只是冰山一角,
.vimrc
可以非常复杂,但从这些基础开始,你就能感受到Vim的强大。
2. 实用高级功能
分屏操作:在一个Vim窗口中同时编辑多个文件,或者查看同一个文件的不同部分。
:
sp
或
:split
:水平分屏,在新分屏中打开当前文件。
:
vsp
或
:vsplit
:垂直分屏,在新分屏中打开当前文件。
Ctrl+w
后跟
h/j/k/l
:在分屏间切换光标。
Ctrl+w
后跟
方向键
:同样可以在分屏间切换。
Ctrl+w
后跟
q
:关闭当前分屏。
多文件缓冲区(Buffer)管理:你可以同时打开多个文件,但只在当前窗口显示一个。
:
e filename
:打开一个新文件到新的缓冲区。
:
ls
:列出所有打开的缓冲区。
:
b N
:切换到编号为N的缓冲区。
:
bnext
/
:bprev
:切换到下一个/上一个缓冲区。
宏(Macro)录制:录制一系列按键操作,然后重复执行,对于重复性任务非常高效。
q
后跟一个字母(例如
qa
):开始录制宏到寄存器
a
。执行你的操作序列。再次按下
q
:停止录制。
@a
:回放寄存器
a
中的宏一次。
数字@a
:回放寄存器
a
中的宏指定次数(例如
5@a
回放5次)。
查找与替换(加强版):Vim的查找替换支持强大的正则表达式。
:/pattern
:查找
pattern
。
:%s/old/new/g
:全局替换所有行中所有
old
为
new
。
:%s/old/new/gc
:全局替换,每次替换前询问确认。
:
s/old/new/g
:只替换当前行中所有
old
为
new
。
这些高级功能和配置技巧,一旦掌握,能极大地提升你在命令行下的文本编辑效率。Vim的学习曲线确实陡峭,但一旦你越过了那个初始的障碍,你会发现它带来的回报是巨大的。它不仅仅是一个编辑器,更像是一个可编程的文本处理平台,值得投入时间去探索和定制。
以上就是怎么在CentOS下装vi_CentOS安装vi编辑器及基本使用教程的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/349195.html
微信扫一扫
支付宝扫一扫