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

Cloud

Gerenciando entradas de DNS com Terraform e Protocolo TSIG

Terraform é uma ferramenta da Hashicorp focada em Bootstrapping e inicialização de recursos. Em comparação com Puppet , este é responsável por gerenciar a configuração de uma infraestrutura existente, já o

DevOps

Descubra as vantagens do MongoDB para o desenvolvimento Web

Bancos de dados são a base dos projetos de desenvolvimento Web. Muitos desenvolvedores estão voltando sua atenção para o MongoDB, um banco de dados sem esquema que é popular para uma

Infraestrutura TI

Entendendo os modos de execução do Wildfly para aplicativos Java

Qual modo usar? É comum que ao escolhermos a utilização de uma plataforma de middleware como o Wildfly para a execução de nossos aplicativos Java, nos deparamos com a seguinte