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

Desenvolvimento

Organize seus objetos de banco de dados com schemas PostgreSQL no Django

Que tal se você pudesse organizar seus objetos de bancos de dados (suas tabelas, views, functions, procedures etc.) em namespaces de acordo com suas respectivas funções no sistema? Neste artigo

Desenvolvimento

A linguagem Go.

Hoje vamos falar um pouco sobre a linguagem Go, que vem ganhando o seu espaço no mercado de trabalho e no mundo de Software Livre. Arquitetada por Rob Pike, Robert

Infraestrutura TI

Aprenda a converter um shell script em binário em passos simples

Na dica da semana de hoje, aprenderemos como converter um shell script em binário, uma prática muito utilizada quando queremos esconder o código fonte de um determinado shell script. Vamos