Editar arquivos de texto no Linux com Vim e Nano

CompTIABeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá as habilidades fundamentais necessárias para usar dois editores de texto essenciais no Linux: vi/vim e nano. Estes são os editores de texto mais utilizados em ambientes Linux, cada um com seus próprios pontos fortes e casos de uso.

Você começará com o editor de texto vi, uma ferramenta poderosa e onipresente em sistemas do tipo Unix. Você aprenderá a criar arquivos, inserir texto usando o Modo de Inserção (Insert Mode), salvar seu trabalho com comandos como :w e :wq, navegar usando teclas de movimento, pesquisar texto e realizar operações básicas de edição, como excluir palavras.

Na segunda parte do laboratório, você explorará o nano, um editor mais amigável e perfeito para iniciantes. Você descobrirá sua interface intuitiva, aprenderá operações básicas de edição e entenderá quando escolher o nano em vez do vim para diferentes tarefas.

Ao final deste laboratório, você se sentirá confortável usando ambos os editores e entenderá qual ferramenta é mais adequada para diferentes cenários em seu fluxo de trabalho no Linux.

Criar um arquivo e inserir texto no Modo de Inserção

Nesta etapa, você aprenderá a usar o editor vi para criar um novo arquivo de texto e inserir texto. O vi (e sua versão moderna, vim) é um editor de texto poderoso e onipresente em sistemas operacionais do tipo Unix. Ele opera em diferentes modos, sendo os dois mais básicos o Modo Normal (para comandos) e o Modo de Inserção (para digitar texto).

Primeiro, vamos garantir que você esteja no diretório de trabalho correto. Todo o trabalho deste laboratório será feito no diretório ~/project.

  1. Abra um terminal. O prompt deve mostrar que você está no diretório project. Você pode verificar o caminho completo com o comando pwd (print working directory).

    pwd
    

    Você deverá ver a seguinte saída, confirmando sua localização:

    /home/labex/project
    

    Terminal mostrando o diretório atual

  2. Agora, inicie o editor vi e crie um novo arquivo chamado test.txt. Ao executar este comando, o vi será iniciado e assumirá o controle da janela do seu terminal.

    vi test.txt
    

    Seu terminal será limpo e você verá uma tela com tils (~) no lado esquerdo. Eles indicam linhas vazias. Na parte inferior da tela, você verá o nome do arquivo "test.txt" [New File]. Você está atualmente no Modo Normal.

  3. Para começar a digitar texto, você precisa alternar para o Modo de Inserção. Pressione a tecla i no seu teclado.

    i
    

    Observe que, na parte inferior da tela, aparece -- INSERT --. Isso confirma que você está no Modo de Inserção e agora pode digitar texto diretamente no arquivo.

  4. Digite a seguinte frase:

    Now is the time for all good men to come to the aid of their country.

    Editor vi mostrando texto inserido no modo de inserção

    Neste ponto, o texto que você digitou existe no buffer de memória do editor, mas ainda não foi salvo no disco. Na próxima etapa, você aprenderá como salvar seu trabalho e sair do editor.

Salvar e sair do arquivo usando :w e :wq

Nesta etapa, você aprenderá como salvar suas alterações e sair do editor vi. Essas ações são realizadas usando comandos no Modo Normal. Como você está atualmente no Modo de Inserção da etapa anterior, primeiro precisa retornar ao Modo Normal.

  1. Para alternar do Modo de Inserção de volta para o Modo Normal, pressione a tecla Esc.

    Esc
    

    Você notará que o indicador -- INSERT -- na parte inferior da tela desaparece. Isso significa que você está agora no Modo Normal, onde as teclas pressionadas são interpretadas como comandos em vez de entrada de texto.

  2. Agora, vamos salvar o arquivo. No Modo Normal, os comandos precedidos por dois-pontos (:) são exibidos em uma linha de comando na parte inferior da tela. Para gravar (salvar) o arquivo, você usa o comando :w.

    Digite a seguinte sequência e pressione Enter:

    :w
    

    Após pressionar Enter, o vi gravará o conteúdo do buffer no arquivo test.txt. Você verá uma mensagem de confirmação na parte inferior, semelhante a esta:

    "test.txt" [New] 1L, 79C written
    

    Esta mensagem confirma que o arquivo test.txt foi salvo, contendo 1 linha e 79 caracteres.

  3. Finalmente, para sair do vi, você pode usar o comando :q para "quit" (sair). Um comando mais comum é :wq, que combina a gravação do arquivo e a saída em uma única ação. Como você já está no Modo Normal, digite o seguinte e pressione Enter:

    :wq
    

    Este comando salva quaisquer alterações finais e fecha o editor vi, retornando você ao prompt do shell no seu terminal. Seu terminal agora deve exibir o prompt de comando familiar, e o arquivo test.txt está salvo no seu diretório ~/project.

Nesta etapa, você praticará alguns dos poderosos comandos de navegação e pesquisa do vi. Esses comandos permitem mover o cursor e encontrar texto de forma eficiente sem usar o mouse. Todas essas operações são realizadas no Modo Normal.

  1. Primeiro, você precisa abrir o arquivo test.txt novamente. A partir do seu prompt do shell no diretório ~/project, digite o seguinte comando:

    vi test.txt
    

    O editor abrirá com o conteúdo do arquivo exibido. O cursor provavelmente estará no início da primeira linha.

  2. Para garantir que o cursor esteja no início do arquivo, você pode usar o comando gg. Enquanto estiver no Modo Normal (pressione Esc se não tiver certeza), digite gg.

    gg
    

    O cursor saltará imediatamente para o primeiro caractere da primeira linha, que é 'N' em nosso arquivo.

  3. A maneira principal de mover o cursor no vi é com as teclas h, j, k e l. Esta é uma habilidade fundamental para qualquer usuário de vi.

    • h move o cursor um caractere para a esquerda.
    • l move o cursor um caractere para a direita.
    • j move o cursor uma linha para baixo.
    • k move o cursor uma linha para cima.

    Tente pressionar essas teclas para mover o cursor pela frase. Este método de navegação funciona em qualquer ambiente de terminal.

  4. Agora, vamos pesquisar texto. O comando / é usado para pesquisar para frente no arquivo. Para pesquisar todas as ocorrências da letra 'a', siga estas etapas: a. Certifique-se de estar no Modo Normal (pressione Esc). b. Digite / seguido do caractere que deseja pesquisar, neste caso, a. Em seguida, pressione Enter.

    /a
    

    O cursor saltará para o primeiro 'a' que encontrar após a posição atual do cursor.

    c. Para encontrar a próxima instância do mesmo termo de pesquisa, basta pressionar a tecla n (de "next" - próximo).

    n
    

    Pressione n várias vezes para percorrer todos os 'a's no arquivo.

Você agora praticou a navegação básica e a pesquisa. Na próxima etapa, você aprenderá como excluir texto.

Excluir uma palavra com dw e sair sem salvar com :q!

Nesta etapa, você aprenderá como excluir texto e como sair do vi sem salvar suas alterações. Esta é uma habilidade crucial para quando você comete um erro e deseja reverter para a última versão salva do arquivo. Você ainda deve estar com o vi aberto no arquivo test.txt da etapa anterior.

  1. Primeiro, vamos mover o cursor para a palavra que queremos excluir. Certifique-se de estar no Modo Normal (pressione Esc se não tiver certeza). Use as teclas h e l para mover o cursor até que ele esteja posicionado na primeira letra da palavra time.

  2. Com o cursor no t de time, digite o comando dw. Este comando significa "delete word" (excluir palavra).

    dw
    

    Você verá a palavra time e o espaço que a segue desaparecerem da tela. A frase agora parece incorreta, o que é perfeito para nossa próxima ação.

  3. Você modificou o arquivo no buffer do editor. Vamos fingir que essa exclusão foi um erro. Em vez de salvar essa versão incorreta, você sairá e descartará a alteração. O comando para fazer isso é :q!. O q é para "quit" (sair) e o ! força a ação, ignorando quaisquer alterações não salvas.

    a. Certifique-se de estar no Modo Normal (pressione Esc). b. Digite o seguinte comando e pressione Enter:

    :q!
    

    Este comando sairá imediatamente do editor vi e retornará ao prompt do shell. Como você usou :q!, a exclusão da palavra time não foi salva no arquivo test.txt. Se você abrir o arquivo novamente, a palavra time ainda estará lá.

Iniciar o vimtutor interativo para mais prática

Nesta etapa, você descobrirá o vimtutor, um tutorial interativo projetado para ensinar habilidades de vi/vim de forma prática. Este laboratório cobriu o básico absoluto, mas o vimtutor oferece um curso abrangente e autodidata que é altamente recomendado para todos os novos usuários.

  1. Você deve estar no prompt do shell no diretório ~/project. Para iniciar o tutorial, basta digitar o comando vimtutor e pressionar Enter.

    vimtutor
    
  2. Este comando abre o vi com um arquivo de tutorial especial. O próprio arquivo contém todas as instruções. Você lerá o texto e, em seguida, praticará os comandos descritos diretamente no arquivo do tutorial. É uma maneira segura e eficaz de aprender, pois você está praticando em uma cópia temporária do arquivo.

    O tutorial é dividido em lições e estima-se que leve cerca de 25 a 30 minutos para ser concluído. Você pode seguir no seu próprio ritmo.

  3. Quando terminar o tutorial (ou quiser sair a qualquer momento), você pode sair como faria de qualquer sessão do vi. Como você não precisa salvar nenhuma alteração no arquivo do tutorial, a melhor maneira de sair é usando o comando :q!.

    a. Pressione Esc para garantir que você esteja no Modo Normal. b. Digite :q! e pressione Enter.

    :q!
    

Isso conclui a parte prática deste laboratório. Ao concluir essas etapas, você aprendeu as habilidades fundamentais para criar, editar, salvar e navegar em arquivos com o editor vi.

Introdução ao editor nano

Nesta etapa, você aprenderá a usar o nano, um editor de texto amigável que é perfeito para iniciantes e edições rápidas. Ao contrário do vi, o nano exibe atalhos úteis na parte inferior da tela e não possui modos diferentes, tornando-o mais intuitivo para novos usuários.

  1. Primeiro, vamos criar um novo arquivo usando o nano. A partir do seu prompt do shell no diretório ~/project, digite o seguinte comando:

    nano welcome.txt
    

    O editor nano abrirá com um arquivo em branco. Observe o menu útil na parte inferior mostrando as funções disponíveis.

  2. Ao contrário do vi, você pode começar a digitar imediatamente no nano sem alternar modos. Copie e cole o seguinte texto:

    Interface do editor nano mostrando atalhos na parte inferior

    Welcome to Linux Text Editing!
    
    This file was created using the nano editor.
    Nano is beginner-friendly and intuitive.
    
    Key advantages of nano:
    - No modes to switch between
    - Shortcuts displayed at bottom
    - Easy to learn and use
    - Perfect for quick edits
    
  3. Agora vamos salvar o arquivo. No nano, "Salvar" é chamado de Write Out. Pressione Ctrl+O para iniciar o Write Out. Você verá um prompt solicitando o nome do arquivo. O nome atual welcome.txt já é exibido, então pressione Enter para confirmar e salvar o arquivo.

    Você verá uma mensagem na parte inferior indicando que o arquivo foi gravado com sucesso, mostrando o número de linhas gravadas.

  4. Para sair do nano, pressione Ctrl+X. Como você já salvou o arquivo, o nano sairá imediatamente e retornará ao prompt do shell. Se você pressionar Ctrl+X antes de salvar, o nano perguntará se deseja salvar as alterações; pressione Y e depois Enter para salvar e sair.

Comparando nano e vi/vim: Quando usar cada editor

Nesta etapa final, você aprenderá sobre as principais diferenças entre nano e vi/vim e entenderá quando usar cada editor. Vamos criar um arquivo de comparação usando ambos os editores para demonstrar suas diferenças.

  1. Primeiro, vamos usar o nano para criar um arquivo de comparação:

    nano editor_comparison.txt
    
  2. Digite o seguinte conteúdo no nano:

    TEXT EDITOR COMPARISON: nano vs vi/vim
    
    NANO EDITOR:
    Pros:
    - Beginner-friendly interface
    - No modes to learn
    - Shortcuts displayed on screen
    - Immediate text input
    - Good for quick edits and simple tasks
    
    Cons:
    - Limited advanced features
    - Less efficient for complex editing
    - Not available on all systems
    
  3. Salve o arquivo e saia do nano.

  4. Agora, vamos abrir o mesmo arquivo com o vi para adicionar mais conteúdo:

    vi editor_comparison.txt
    
  5. Navegue até o final do arquivo usando G (G maiúsculo), depois pressione o para abrir uma nova linha e entrar no Modo de Inserção. Adicione o seguinte conteúdo:

    VI/VIM EDITOR:
    Pros:
    - Extremely powerful and feature-rich
    - Available on virtually all Unix/Linux systems
    - Highly efficient once mastered
    - Excellent for programming and complex editing
    - Extensive customization options
    
    Cons:
    - Steep learning curve
    - Modal interface can be confusing for beginners
    - Requires memorizing many commands
    
  6. Pressione Esc para retornar ao Modo Normal, depois salve e saia com :wq.

  7. Vamos visualizar o arquivo de comparação concluído:

    cat editor_comparison.txt
    

    Isso exibirá a comparação completa mostrando o conteúdo adicionado por ambos os editores.

Quando usar cada editor:

  • Use o nano quando:

    • Você é novo na edição de texto no Linux
    • Estiver fazendo edições rápidas e simples
    • Trabalhar ocasionalmente em arquivos de configuração
    • Preferir uma interface direta e intuitiva
  • Use o vi/vim quando:

    • Estiver fazendo programação extensiva ou manipulação de texto
    • Trabalhar em servidores remotos (o vi está sempre disponível)
    • Precisar de recursos avançados como macros, plugins ou pesquisa/substituição complexa
    • Eficiência e velocidade forem importantes após aprender os comandos

Ambos os editores são ferramentas valiosas no kit de ferramentas de um usuário Linux, e conhecer ambos lhe dá flexibilidade em diferentes situações.

Resumo

Neste laboratório, você aprendeu a usar dois editores de texto essenciais no Linux: vi/vim e nano.

Com o vi/vim, você dominou os conceitos fundamentais da edição modal, aprendendo a alternar entre o Modo Normal e o Modo de Inserção. Você praticou a criação de arquivos, inserção de texto, salvamento com :w e :wq, navegação com teclas de movimento (h, j, k, l), pesquisa com /, edição com comandos como dw e sair sem salvar usando :q!. Você também descobriu o vimtutor interativo para aprendizado contínuo.

Com o nano, você experimentou uma abordagem mais amigável para a edição de texto. Você aprendeu a criar e editar arquivos sem se preocupar com modos, usou a interface intuitiva com atalhos exibidos na parte inferior da tela e praticou operações básicas como salvar e sair de arquivos.

Principais conclusões:

  • O nano é perfeito para iniciantes e edições rápidas com sua interface intuitiva e atalhos visíveis
  • O vi/vim é mais poderoso e eficiente para tarefas de edição complexas, mas requer mais investimento em aprendizado
  • Ambos os editores são ferramentas valiosas - o nano pela simplicidade e o vim pelo poder e disponibilidade
  • Entender quando usar cada editor o tornará mais eficaz em diferentes cenários do Linux

Agora você tem a base para escolher o editor de texto certo para suas necessidades específicas e pode continuar desenvolvendo suas habilidades com ambas as ferramentas.