Existem cenários em que vi
é a única opção para criar, editar ou modificar um arquivo em um ambiente Ubuntu?
Minha pergunta é basicamente saber realmente se existe um caso em que eu seria forçado a usar, vi
porque seria a única opção disponível em um caso específico no ecossistema do Ubuntu.
Poderia um exist caso particular em que eu de alguma forma não teriam acesso a outras opções como nano
, pico
ou simplesmente enviar as informações com ferramentas como cat
, sed
, tee
e mais?
Eu diria que isso é mais do lado do servidor ou da nuvem, pois na área de trabalho há muito mais opções, mas de quem usa muito o terminal, pergunto:
Existe esse caso?
visudo
pode usar qualquer editor. Como sua configuração padrão no Ubuntu respeita as variáveis de ambienteEDITOR
eVISUAL
, você pode executar osudo env VISUAL=emacs visudo
emacs ou mesmogksudo env VISUAL=gedit visudo
um editor gráfico como o Gedit. (sudo -H
ousudo -i
pode ser usado no lugar degksudo
.) Sugiro dessaenv
maneira, poisVISUAL=emacs sudo visudo
não funcionará (sudo
redefine a maior parte do ambiente) esudo -EH
pode ser considerado desaconselhável.cat
?sed
? Sério?vi
realmente não é tão complicado, e se você realmente não pode se incomodar em aprender, você só precisa se lembrar de dois modos (modo Normal e Inserir). Você move o cursor com setas (ou HJKL, se não estiver disponível), pressione "i" para iniciar a edição (modo de inserção). Quando terminar, pressione "Esc" para voltar ao modo normal. Digite ": wq" para salvar e sair (gravação + sair).Respostas:
Dentro do ecossistema do Ubuntu , eu não acho que esse caso possa sequer existir , como
vi
seria pelo menos um pouco pequeno, que já é um "realvim
" longe de "realvi
".No contexto de sistemas embarcados com recursos limitados , que normalmente não são Ubuntu, você pode apenas ter um
vi
que acaba por ser um link parabusybox
. E não resta espaço. Então,vi
é a única opção.Além disso, acho que situações em que
vi
a única opção não são muito comuns hoje em dia, mesmo fora do mundo Linux .Mas pode haver facilmente situações em que
vi
é a única opção que você pode planejar , a única opção que certamente existirá em alguma situação futura - o que acontecerá dentro da sala de servidores sobrecarregada de um cliente, provavelmente.Imagine que você é chamado por um cliente:
Não tem problema, até agora, você sabe que haverá
vi
!fonte
busybox
vi
é 4k linhas:;curl -s https://gitorious.org/busybox/busybox/raw/1c7a58dfb82ea04c525e0c19f94f2d800dee99e3:editors/vi.c | wc
)Vi nunca é a única opção; você sempre pode usar
ed
.fonte
ed
não faz parte dobase
.vim
também não é.vi
is.ed
é apenas parte dastandard^
instalação. Se você faz umaminimal
instalação,ed
não está incluído.Bem, há um caso em que você precisa do
vi
editor, vamos assumir:*nix
sistema desconhecidoComo você pode ver, não há teclado numérico . Com a velha
vi
(e eu quero dizer o original tradicionalvi
, nãovim
,vim.tiny
ouvim.basic
), você pode editar um arquivo com este teclado. Sem as setas ? Sim, quando você está no modo de comando você moveu através do arquivo com h, j, ke l, como um profissional. hfoi deixado, jcaiu, kfoi levantado e lestava certo.fonte
vi
em particular. Todos os editores de texto mais antigos têm combinações de teclas de "backup" que permitem que você trabalhe sem as teclas de seta, etc., embora eu ouse dizer quevi
é o único editor em que você não perderá as teclas de seta.ed
! Não há necessidade desses truques "visuais" em um sistema como esse! Apenas tente usar o vim no terminal em papel e veja como você gerencia ... Mais a sério, o conhecimentoed
é útil de qualquer maneira, é uma opção decente quando a edição precisa ser executada por script.O fato é que, em muitas distribuições, os editores gostam
nano
epico
simplesmente não são padrão, enquanto outros pacotes, a saber,vim-tiny
são. Veja aqui a lista de pacotes do ubuntu-minimal,vim-tiny
é o único editor . De acordo com esta resposta, parece ser o caso do servidor Ubuntu também. Eu sei que este é o caso do Debian básico, do Fedora também.Dito isto, considerando que, se você possui
nano
um sistema, ainda não vi um caso em que você precisaria usarvi
, mas, reproduzindo a resposta de @ Volker, se você estiver trabalhando para um cliente e não tiver acesso root?apt-get install nano
não vai lhe fazer muito bem (se ele ainda tiver acesso à internet externa!).fonte
Existem vários casos em que
vi
(e com isso quero dizer naturalmentevim.tiny
porque é isso que enviamos) poderia ser o único editor interativo. Se ignorarmos borboletas e raios cósmicos, essas parecem as ocasiões mais prováveis em que isso pode acontecer:Você está usando apenas o
ubuntu-minimal
meta-pacote base. Isso depende,vim-tiny
mas não de outros editores. No momento, não consigo encontrar uma maneira de instalar o Ubuntu sem astandard^
tarefa, mas você pode removê-lo após a instalação com:Tenho experiência pessoal em que recebi uma imagem do sistema sem a
standard^
tarefa instalada. Se eu não tivesse acesso à redevi
teria sido minha única opção.Fazendo chroot em um ambiente que apenas mapeava
vi
atravésNuking manual de todos os outros editores (e desativação dos meios para reinstalá-los)
Quebrar manualmente o shell para interromper editores conhecidos, exceto o
vi
lançamento.Uma instalação verdadeiramente mínima será o motivo mais provável, mas esses são bastante raros atualmente. Algumas empresas de hospedagem em nuvem e VPS as utilizam (para economizar espaço em disco tanto quanto qualquer outra coisa), mas eu sugeriria que elas definitivamente não são a norma.
fonte
Nos casos em que você não pode instalar o emacs, ou nos casos em que é necessário modificar um arquivo de configuração para permitir a instalação do emacs. :-p
fonte
Muitas instalações (a maioria?) Da Busy-Box possuem apenas
vi
.Não é específico do ubuntu, mas é verdade para muitos dispositivos incorporados.
fonte
Sempre tem gato, cabeça, rabo ... então não tenho certeza de que existe um sistema em que você não tenha alternativa, mas é possível encontrar sistemas em que não há uma alternativa melhor, mesmo se você preferir o emacs.
Meu exemplo foi um sistema que administrei uma vez, que era tão lento (ou que a linha era lenta e com perdas) que, ao navegar com as teclas do cursor, muitas vezes alternava repentinamente para inserir e injetar lixo no arquivo editado e usar HJKL para movimento foi a única opção confiável.
fonte
Aqui está o caso em que o vim é a única opção no ecossistema do Ubuntu:
Ubuntu Snappy
não vem com nenhum editor de texto que não sejavim-tiny
. Talvez no futuro haja um, mas não a partir de 2015-16. Se você estiver usando o Ubuntu Snappy sobre console serial ou ssh, é melhor estar preparado para usarvim
.fonte
Entrei em uma situação em que apenas o modo de linha do vi estava funcionando. Algo relacionado a ter realmente estragado as definições dos terminais. Basicamente, apenas vi no modo de linha (isso se comporta como o vi normal, se você fingir que possui um terminal de 1 linha), ex e ed estavam funcionando porque a única definição de terminal era "burra".
fonte