Domine o Vim: o editor de texto essencial para Sysadmins Linux

Domine o Vim: o editor de texto essencial para Sysadmins Linux

Para um Sysadmin Linux, possuir domínio de editores de texto via linha de comando é imprescindível. Constantemente temos a necessidade de alterar arquivos, visualizar  o contéudo, abrir mais de um arquivo por vez, criar scripts, etc.

O “Vi” é o editor básico do GNU/Linux, e está disponível em grande parte das distribuições Linux.

O Vim é uma versão mais completa e com mais recursos do que o “Vi”, cujo seu significado é “Vim =
VI iMproved”, ou seja o Vi melhorado.

O vim é utilizado para desenvolvimento?

A resposta é sim!

Boa parte dos desenvolvedores estão acostumados a usar algum tipo de IDE (Ambiente integrado de desenvolvimento), como Vistual Studio Code  e Pycharm onde se tem muitas facilidades como plugins, compilador, assistência de código, porém não é sempre que você terá acesso a esse ambiente pré-configurado e assim nasce a necessidade de estar preparado para edições rápidas em servidores remotos. Alguns desenvoldores até preferem usar editores de textos mais simples, pois de um certo ponto de vista impulsiona o aprendizado.

Modos do Vim

Existem 4 modos de operação, sendo eles:

  • Normal – Neste modo podemos colar o que está no “buffer”, uma espécie de área de transferência. Podemos ter um buffer para cada letra do alfabeto, também é possível apagar linhas, e colocar trechos no buffer. Quando se inicia o Vim já estamos neste modo; caso esteja em outro modo basta pressionar <ESC>.
  • Inserção – Neste modo é feita a inserção de texto, para entrar neste modo basta pressionar a tecla de insert ou a tecla a de append
  • Visual – Neste modo podemos selecionar blocos verticais de texto. É exibido um destaque visual. É uma das melhores formas de se copiar conteúdo no Vim.
  • Comando – Neste modo digitamos comandos como o de salvar (:w) ou para ir para uma linha qualquer (:79).

Vim na prática

É muito comum nas primeiras vezes que você utiliza o vim, você ficar preso nele sem saber como sair, mas existe um comando chamado vimtutor que vai te ajudar nessa 😉

$ vimtutor

Ao executar o comando acima, o vim abrirá um texto de boas vindas seguindo de um tutorial que exige entre 25 e 30 minutos e leitura. Umas das primeiras lições do vimtutor  (Lesson 1.2) é justamente como sair de um arquivo.

Saindo de um arquivo

Vamos criar um arquivo chamado 4linux para aprendizado e abri-lo através do Vim

$ touch 4linux && vim 4linux
$ # Aperte a tecla <ESC> para entrar no modo normal e em seguida:q! para sair do arquivo sem salvar suas alterações.
$ # O mesmo processo é feito apertando a tecla <ESC> e em seguida :ZQ (shift +zq) .

Salvando um arquivo

$ echo -e 'Meu sistema operacional é ?\nMeu sistema operacional é ?\nMeu sistema operacional é ?\n' > 4linux
$ vim 4linux
$ # Aperte a tecla <ESC> e em seguida :w para gravar alterações no arquivo 4linux. 
$ # Para sair do arquivo e também salvar, aperte a tecla <ESC> e em seguida :wq (w=write e q=quit).

O conteúdo do arquivo criado deve ser esse:

Meu sistema Operacional é ?
Meu sistema Operacional é ?
Meu sistema Operacional é ?

Procurando por um texto

$ # Aperte a tecla <ESC> e em seguida / para procurar por um texto /sistema
$ # Apertando a tecla n, você irá para a próxima ocorrência de cima para baixo, já usando a tecla N (shift+n), você irá procurar de baixo para cima.

Substituição de texto

$ # Aperte a tecla para entrar no modo de comando e em seguida faça a substuição  através do comando :%s/?/Linux/g

Agora o contéudo do seu arquivo deve estar assim:

Meu sistema Operacional é Linux
Meu sistema Operacional é Linux
Meu sistema Operacional é Linux

Inserindo textos

$ # Apertando a tecla G (shift +g) , você irá para o final do arquivo, em seguida aperte a tecla o para entrar no modo de inserção já pulando uma linha e digite:  “Os principais serviços de rede são: “, pule uma linha digitando <ENTER>.

Adicionando contéudo de um arquivo existente

$ # Aperte <ESC> para sair do modo inserção  e em seguida  digite :r /etc/services, confirme o comando apertando a tecla <ENTER>.

$ # Salve e saia do arquivo: :wq

Vamos fazer uma pesquisa pela palavra submission no nosso arquivo 4linux, utilizando o comando grep .

$ grep submission 4linux

A saída do comando grep acima deve ser esta:

submission 587/tcp msa # mail message submission
submission 587/udp msa # mail message submission

O vim é muito rico em funcionalidades e atalhos. Você pode praticar até jogando no site https://vim-adventures.com ou até mesmo de uma forma mais interativa no site https://www.openvim.com/.

Agora por último abra o vim em modo de comando digitando e depois faça o vim feliz!  :smile

Líder em Treinamento e serviços de Consultoria, Suporte e Implantação para o mundo open source. Conheça nossas soluções:

CURSOSCONSULTORIA

Anterior Lançamento do curso de Automação de Marketing com Mautic pela 4Linux
Próxima Guia prático: Como configurar o OpenLDAP para aumentar a disponibilidade do seu ambiente

About author

Felipe Valim
Felipe Valim 3 posts

Felipe Valim é Graduado em Sistemas de Informação pelo Centro Universitario Eniac, possui as certificações LPIC-3 Virtualization and Containerization, LPIC-2, LPIC-1, Zabbix Certified Professional & Specialist. Com mais de 8 anos de experiência em tecnologias Open Source, atualmente integra o time de Consultoria e Treinamento 4Linux.

View all posts by this author →

Você pode gostar também

Infraestrutura TI

Proteja seu e-mail contra spam e vírus com ferramentas open source

Um dos maiores ou até mesmo o maior problema quando falamos de e-mail é o recebimento de spam e vírus, um incomodo enorme tanto para o cliente final como a

Infraestrutura TI

Guia prático: Como otimizar buscas no MongoDB com Aggregate

Descubra como processar documentos distintos agrupados em uma única saída para facilitar a geração de resultados e performance quando preciso efetuar buscas em banco de dados MongoDB A seguir explicarei

Desenvolvimento

Descubra os benefícios e vantagens do Zend Framework 2 para desenvolvimento PHP

Se você está lendo este artigo provavelmente você ja desenvolveu ou pretende desenvolver algum projeto de software, talvez você nunca tenha usado um framework antes por isso acho necessário uma