为什么要提供vi和vim?


3

我认为我说RedHat和其他发行版同时提供了vi Vim。

有没有人知道提供这两者的理由是什么时候假设提供Vim它涵盖了vi的功能?

ETA:它不是符号链接,它们是不同的二进制文件。

$ ls -lh /bin/vi
-rwxr-xr-x 1 root root 747K Jul  7  2012 /bin/vi
$ ls -lh /usr/bin/vim
-rwxr-xr-x 1 root root 1.9M Jul  7  2012 /usr/bin/vim

2
在StackOverflow中有可能重复。也许它回答了你的问题?stackoverflow.com/a/1159341
Lorenzo Von Matterhorn 2013年

2
它真的是vi吗?我知道ubuntu符号链接/ usr / bin / vi和/ usr / bin / vim到/ etc / alternatives / vim。。。
ernie 2013年

4
vi符合POSIX标准。
LawrenceC

3
每个人似乎都忽略了这样一个事实,即OP并没有询问差异,而是“提供两者的理由是什么”。换句话说,为什么两个?
那个巴西人

Answers:


2

RedHat及其变体/克隆倾向于提供/ bin / vi,它基本上是Vim编译的,具有最少的功能和较少的库依赖性,因此即使文件系统受损,它也更有可能运行。它也比Vim的“正常”或“巨大”版本要小,即使它现在没那么重要,它同时也是一个考虑因素。

对于需要文本编辑器且至少对vi至少熟悉的用户和管理员而言,它基本上是一个“后备”。对于那些想要更强大的编辑器的人来说,他们通常必须明确地安装“vim-enhanced”或者他们的发行版为“全功能”Vim提供的任何东西。

我已经看到甚至更小的版本vi或类似vi的编辑器,这些编辑器并不是一个简化的发行版使用的Vim。Busybox集成了一个。


0

不,你错了。

Redhat和所有其他发行版都提供了a vi和a vim 命令,但它们不是单独的可执行文件:vi只是一个符号链接vim。这种情况发生在每个UNIXy系统上,因为该vi命令是标准的一部分,因此,如果系统声称符合UNIX,则必须由系统提供。

据推测,在某些时候,大多数发行版决定使用vim而不是原版vi(因为我不知道的原因:架构兼容性?现代功能?其他?)。这就是为什么你得到两个vivim


1
我认错:你和我是部分错了。基于Debian的发行版和Mac OS X都有符号链接,但Redhat似乎有两个二进制文件。是的,听起来很傻。你应该问Redhat。
罗曼

1
我想这是“如果它没有破坏......”的情况 - 我无法想象它们花费的成本超过了提供这两者的微不足道的努力,所以没有必要冒险扰乱任何奇怪的东西,意外的角落案件可能会受到变更的影响。
evilsoup 2013年

RHEL 6有一个vim-minimal软件包,它提供/bin/vi了一个vim-enhanced软件包/usr/bin/vim
Cristian Ciupitu 2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.