Eu sei que isso é mais uma questão geral de Linux, mas w / e. Então, quando entro em um programa como o vim no prompt de comando, ele exibe todo o texto do arquivo e posso editá-lo etc. Mas não consigo descobrir como fechar ou salvar o arquivo e voltar ao prompt de comando sem matar o processo. Qualquer ajuda é apreciada.
command-line
vim
Vamos almoçar
fonte
fonte
Respostas:
No vim, existem 3 modos diferentes:
Para voltar ao modo normal, você sempre pode pressionar esc.
Quando estiver no modo Normal Pressione
:
para iniciar seu comando (você o verá aparecer no canto inferior esquerdo). Os seguintes comandos estão relacionados à saída do vim::q
- saia se nenhuma alteração for feita:q!
- saia e destrua quaisquer alterações feitas:wq
- gravar alterações (salvar) e sair:x
- semelhante a:wq
, somente escreva o arquivo se forem feitas alterações e saiafonte
:x
é um atalho para:wq
mode()
função no vim pode retornar 18 valores distintos.:
no modo normal. Se você acertaresc
, você volta ao modo normal. -1 por enganar as pessoas que tentam aprender a terminologia padrão (e, consequentemente, conseguir entender o sistema de ajuda).Primeiro, pressione a escapetecla 1 1
Em seguida, basta digitar
ZZ
(são dois Z maiúsculos seguidos).Ou digite
:x
. Qualquer um salvará as edições e sairá.Você também pode usar
:wq
Como alternativa, você pode digitar
:q
(também conhecido como " sair, por favor "). Isso será encerrado apenas se você não tiver feito edições.Se você fez edições e deseja descartá-las e sair, digite
:q!
(também conhecido como " encerrar, droga !")1 : Isso garante que você esteja no modo "comando". O que você deseja para digitar comandos, como os necessários para sair.
fonte
Para nossa inconveniência, não existe um método geral para sair de programas de linha de comando, como existe o botão "X" para programas gráficos.
Muitos programas de linha de comando seguem o tema de usar Q(por exemplo,
man
etop
) ou Ctrl+ C(por exemplo,ping
ewatch
) para sair, mas isso varia consideravelmente, especialmente entre os editores de texto::q!
então Enter, geralmente precedida por várias prensas de Escboa medida.Editores como esse são armadilhas para os inexperientes. Minha preferência e recomendação pessoal é que, quando forçado a editar o texto na linha de comando, use o Joe's Own Editor (JOE), mais auto-explicativo .
fonte
nano
é um editor de texto de console auto-explicativo muito mais universal.Juntamente com a resposta de jondavidjohn, aqui estão dois links que contêm informações indispensáveis sobre o uso do vim.
Este é um gráfico do teclado que mostra o que cada tecla faz, dependendo se você estiver no modo de edição, modo de comando ou modo visual:
http://www.viemu.com/a_vi_vim_graphical_cheat_sheet_tutorial.html
Este é o melhor tutorial sobre vim que eu já trabalhei. É conversacional e fácil de entender, devido ao formato de IRC / mensagens instantâneas.
http://www.vi-improved.org/tutorial.php
Finalmente, existem alguns como o Aendruk que simplesmente não querem usar editores avançados de texto de linha de comando. O Vim, em particular, possui uma curva de aprendizado acentuada e, na verdade, requer algum esforço inicial para se acostumar. Mas é muito rápido e muito poderoso. Se você tem interesse no Linux além do uso básico da área de trabalho, vale a pena investir tempo aprendendo um editor de texto de linha de comando decente, como o Vim ou o Emacs. Se você precisar editar algum texto e não se importar muito além disso, tente digitar
gedit filename.txt
. Ele lançará um programa gráfico familiar, bem como o Notepad do Windows.fonte
se Esc
:q!
não funcionar,tente primeiro Ctrl+ q(para desbloquear a tela bloqueada com Ctrl+ s)
tente novamente Esc
:q!
(sair sem salvar) ou Esc:wq
(para salvar e sair)fonte
Deseja sair sem salvar:
Sair com salvar:
fonte