Czy istnieją scenariusze, w których vi
jedyną opcją do utworzenia, edycji lub modyfikacji pliku w środowisku Ubuntu?
Moje pytanie polega w zasadzie na tym, aby naprawdę wiedzieć, czy istnieje taki przypadek, w którym musiałbym go użyć, vi
ponieważ byłaby to jedyna dostępna opcja w konkretnym przypadku w ekosystemie Ubuntu.
Dało szczególny exist przypadek, w którym jakoś nie miałyby dostęp do innych opcji, jak nano
, pico
lub po prostu wysyłania informacji za pomocą narzędzi takich jak cat
, sed
, tee
i więcej?
Zakładam, że jest to po stronie serwera lub chmury, ponieważ na pulpicie jest wiele innych opcji, ale od każdego, kto często korzysta z terminala, pytam:
Czy jest taki przypadek?
visudo
można używać dowolnego edytora. Ponieważ jego domyślna konfiguracja w Ubuntu uwzględnia zmienne środowiskoweEDITOR
iVISUAL
, możesz uruchomićsudo env VISUAL=emacs visudo
emacsa lub nawetgksudo env VISUAL=gedit visudo
edytor graficzny, taki jak Gedit. (sudo -H
lubsudo -i
może być użyty zamiastgksudo
.) Sugeruję tenenv
sposób, ponieważVISUAL=emacs sudo visudo
nie działa (sudo
resetuje większość środowiska) isudo -EH
może być uważany za niewskazany.cat
?sed
? Naprawdę?vi
naprawdę nie jest tak skomplikowane, a jeśli naprawdę nie możesz się tym martwić, musisz tylko zapamiętać dwa tryby (tryb normalny i tryb wstawiania). Przesuwasz kursor za pomocą strzałek (lub HJKL, jeśli nie jest dostępny), naciśnij „i”, aby rozpocząć edycję (tryb wstawiania). Po zakończeniu naciśnij „Esc”, aby wrócić do trybu normalnego. Wpisz „: wq”, aby zapisać i wyjść (Write + Quit).Odpowiedzi:
W ekosystemie Ubuntu nie sądzę, aby ten przypadek mógł istnieć , podobnie jak
vi
przynajmniej vim-malutki, który już jest „prawdziwyvim
” daleki od „prawdziwegovi
”.W kontekście systemów wbudowanych o ograniczonych zasobach , które zwykle nie są Ubuntu, możesz mieć taki,
vi
który może być łączem dobusybox
. I nie zostało już miejsca. Zatemvi
jest jedyną opcją.Poza tym myślę, że sytuacje, w których
vi
jedyna opcja nie są dzisiaj tak powszechne , nawet poza światem Linuksa .Ale mogą łatwo wystąpić sytuacje, w których
vi
jest to jedyna opcja, którą możesz zaplanować , jedyna opcja, która na pewno będzie istnieć w jakiejś przyszłej sytuacji - która najprawdopodobniej wydarzy się w nadmiernie schłodzonej serwerowni klienta.Wyobraź sobie, że dzwoni do ciebie klient:
Nie ma problemu, do tej pory wiesz, że będzie
vi
!źródło
busybox
vi
to 4k liniicurl -s https://gitorious.org/busybox/busybox/raw/1c7a58dfb82ea04c525e0c19f94f2d800dee99e3:editors/vi.c | wc
;;)Vi nigdy nie jest jedyną opcją; zawsze możesz użyć
ed
zamiast tego.źródło
ed
nie jest częściąbase
.vim
nie jest.vi
is.ed
jest tylko częściąstandard^
instalacji. Jeśli wykonaszminimal
instalację,ed
nie zostanie uwzględniona.Jest jeden przypadek, w którym potrzebujesz
vi
edytora, załóżmy:*nix
systemJak widać, nie ma klawiatury numerycznej . Ze starym
vi
(i mam na myśli oryginalne tradycyjnyvi
, nievim
,vim.tiny
albovim.basic
) można edytować plik z tej klawiatury. Bez klawiszy strzałek ? Tak, gdy jesteś w trybie poleceń został przeniesiony za pomocą pliku z h, j, ki l, jak profesjonalista. hzostał, jbył na dole, kbył na górze i lmiał rację.źródło
vi
. Wszystkie starsze edytory tekstu mają kombinacje klawiszy „kopii zapasowych”, które pozwalają pracować bez klawiszy strzałek itp., Choć uważam, żevi
to jedyny edytor, w którym nie można pominąć klawiszy strzałek.ed
! Nie potrzeba tych „wizualnych” sztuczek w takim systemie! Po prostu spróbuj użyć vima na terminalu papierowym i zobacz, jak zarządzasz ... A tak na poważnie, wiedza ied
tak jest przydatna, jest to przyzwoita opcja, gdy trzeba edytować skrypt.Faktem jest, że w wielu dystrybucjach edytory takie jak
nano
ipico
po prostu nie są standardowe, podczas gdy inne pakiety, a mianowicievim-tiny
są. Zobacz tutaj listę pakietów ubuntu-minimal,vim-tiny
jest jedynym edytorem . Zgodnie z tą odpowiedzią wydaje się, że dotyczy to również serwera Ubuntu. Wiem, że dotyczy to również podstawowego Debiana, Fedory.Biorąc to pod uwagę, biorąc pod uwagę, że jeśli masz
nano
w swoim systemie, nie widziałem jeszcze przypadku, w którym MUSISZ użyćvi
, ale grając odpowiedź @ Volker, jeśli pracujesz dla klienta i nie masz dostęp do roota?apt-get install nano
nie zrobi ci wiele dobrego (jeśli ma nawet dostęp do zewnętrznego internetu!).źródło
Istnieje wiele przypadków, w których
vi
(i przez to oczywiście mam na myśli,vim.tiny
ponieważ to właśnie wysyłamy) może być jedynym interaktywnym edytorem. Jeśli zignorujemy motyle i promienie kosmiczne, wydają się to najbardziej prawdopodobne sytuacje, w których może się to zdarzyć:Używasz tylko
ubuntu-minimal
podstawowego meta-pakietu. To zależy,vim-tiny
ale nie ma innych redaktorów. Nie mogę obecnie znaleźć sposobu na zainstalowanie Ubuntu bezstandard^
zadania, ale możesz je usunąć po instalacji za pomocą:Mam osobiste doświadczenie, w którym dostałem obraz systemu bez
standard^
zainstalowanego zadania. Gdybym nie miał dostępu do sieci,vi
byłaby to moja jedyna opcja.Chroot środowisku, które tylko odwzorowanym
vi
przezRęcznie nukuj wszystkie pozostałe edytory (i wyłączając środki do ich ponownej instalacji)
Ręczne łamanie powłoki w celu zatrzymania znanych edytorów, z wyjątkiem
vi
uruchamiania.Naprawdę minimalna instalacja będzie najbardziej prawdopodobnym powodem, ale obecnie są one dość rzadkie. Niektóre firmy VPS i firmy hostingowe w chmurze ich używają (aby zaoszczędzić miejsce na dysku tak samo jak cokolwiek innego), ale sugerowałbym, że zdecydowanie nie są one normą.
źródło
W przypadkach, w których nie możesz zainstalować emacsa lub w przypadkach, w których musisz zmodyfikować plik konfiguracyjny, aby umożliwić ci instalację emacsa. :-p
źródło
Wiele (większość?) Instalacji Busy-Box ma tylko
vi
.Nie jest specyficzny dla Ubuntu, ale dotyczy wielu wbudowanych urządzeń.
źródło
Zawsze jest kot, głowa, ogon ... więc nie jestem pewien, czy istnieje system, w którym nie masz żadnej alternatywy, ale możliwe jest znalezienie systemów, w których nie ma lepszej alternatywy, nawet jeśli wolisz emacsa.
Moim przykładem był system, którym kiedyś administrowałem, który był albo tak wolny (lub linia była powolna i stratna), że podczas nawigacji za pomocą klawiszy kursora często nagle przełączał się na wstawianie i wstrzykiwanie śmieci do edytowanego pliku i używanie HJKL do poruszania się była jedyną niezawodną opcją.
źródło
Oto przypadek, w którym vim jest jedyną opcją w ekosystemie Ubuntu:
Ubuntu Snappy
nie jest dostarczany z żadnym edytorem tekstowym innym niżvim-tiny
. Być może w przyszłości będzie taki, ale nie w latach 2015-16. Jeśli zamierzasz używać Ubuntu Snappy na konsoli szeregowej lub ssh, lepiej przygotuj się do użyciavim
.źródło
Raz wpadłem w sytuację, w której działał tylko tryb liniowy vi. Ma to coś wspólnego z naprawdę zepsutymi definicjami terminali. Zasadniczo tylko vi w trybie liniowym (zachowuje się jak normalny vi, jeśli udajesz, że masz terminal 1-liniowy), ex i ed działały, ponieważ jedyną definicją terminala było „głupie”.
źródło