Ich glaube, ich habe Recht, wenn ich sage, dass RedHat und andere Distributionen sowohl vi als auch Vim bereitstellen .
Weiß jemand, was das Grundprinzip dahinter steckt, wenn vermutlich Vim die Funktionalität von vi abdeckt?
ETA: Es ist kein Symlink, sie sind verschiedene Binärdateien.
$ 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
vim
redhat-enterprise-linux
vi
Reich
quelle
quelle
vi
ist im POSIX-Standard.Antworten:
RedHat und seine Varianten / Klone bieten in der Regel ein / bin / vi, das im Wesentlichen mit Vim kompiliert ist und nur über ein Minimum an Funktionen und weniger Bibliotheksabhängigkeiten verfügt, sodass es mit größerer Wahrscheinlichkeit auch mit einem beschädigten Dateisystem ausgeführt werden kann. Es ist auch kleiner als eine "normale" oder "riesige" Version von Vim, was früher eine Überlegung war, auch wenn es jetzt nicht mehr so wichtig ist.
Grundsätzlich handelt es sich dabei um einen "Fallback" für Benutzer und Administratoren, die einen Texteditor benötigen und mit vi zumindest minimal vertraut sind. Für diejenigen, die einen leistungsfähigeren Editor wünschen, müssen sie normalerweise ausdrücklich "vim-enhanced" installieren oder was auch immer ihre Distribution für ein "voll funktionsfähiges" Vim vorsieht.
Ich habe sogar kleinere Versionen von
vi
oder vi-ähnlichen Editoren gesehen, die keine abgespeckten Vim sind, die einige der kompakten Distributionen verwenden. Busybox integriert eine.quelle
Nein, du liegst falsch.
Redhat und alle anderen Distributionen bieten sowohl ein
vi
und einvim
Befehle , aber sie sind keine separaten ausführbaren Dateien:vi
ist nur ein symbolischer Link zuvim
. Dies geschieht auf allen UNIXy-Systemen, da dervi
Befehl Teil des Standards ist und als solcher von einem System bereitgestellt werden muss, wenn es behauptet, UNIX-kompatibel zu sein.Vermutlich entschieden sich die meisten Distributionen irgendwann für die Verwendung
vim
anstelle des Originalsvi
(aus mir unbekannten Gründen: Architekturkompatibilität? Moderne Funktionen? Andere?). Welches ist, warum Sie beidevi
und bekommenvim
.quelle
/bin/vi
und ein vim-enhanced- Paket/usr/bin/vim
.