Como Editar Arquivos com um Verdadeiro Editor de Texto do PowerShell

Você executou um script que leu um arquivo de texto e descobriu que o arquivo tinha várias entradas incorretas? Um editor de texto do PowerShell pode ser útil em tais situações. Você não precisaria iniciar um editor externo. Em vez disso, pode editar o arquivo sem sair do PowerShell. Legal, não é?

Continue lendo e aprenderá como instalar e usar três editores de texto (Nano, Vim e Emacs) para editar seus arquivos de texto dentro do PowerShell. Este tutorial também abordará os benefícios de cada um para ajudá-lo a escolher qual é o ideal para você.

Vamos começar!

Pré-requisitos

Este tutorial será uma demonstração prática. Se deseja acompanhar, certifique-se de ter o seguinte:

  • A computer running on Windows 7 or higher. The examples in this tutorial will use Windows 10 version 21H1.
  • Windows PowerShell v3+ ou PowerShell Core v6+. Este tutorial usará a versão 5.1 do Windows PowerShell.
  • A versão mais recente do Chocolatey (v0.11.2 na data da escrita deste tutorial).

Usando o Nano como Editor de Texto do PowerShell

Se você é novo em editores de texto baseados em terminal ou precisa apenas fazer uma edição rápida em um arquivo, o Nano é ideal para você. O Nano é leve, intuitivo e mais adequado para tarefas de edição de texto leve em comparação com os editores mais avançados deste tutorial.

Instalando o Nano

Para instalar o Nano, siga as etapas abaixo.

1. Abra o PowerShell como administrador.

2. No PowerShell, execute o seguinte comando choco install para instalar o editor de texto Nano. O interruptor (-y) ignorará o prompt de confirmação e prosseguirá com a instalação do pacote.

choco install nano -y

O processo de instalação será semelhante à captura de tela abaixo. Como você pode ver, neste exemplo, a instalação do Nano foi bem-sucedida.

Installing Nano

3. Após instalar o Nano, execute o seguinte comando para verificar se a instalação foi bem-sucedida e exibir a versão atual.

nano --version

Como pode ser visto abaixo, o comando foi bem-sucedido e exibiu a versão do Nano no seu computador.

Verifying the Nano version

Editando e Salvando um Arquivo

Agora que você tem o Nano instalado, é hora de experimentá-lo!

1. Para criar um novo arquivo ou abrir um existente, execute o comando nano e siga com o nome do arquivo a ser criado ou aberto. Para os exemplos neste tutorial, você estará criando e editando um script do Windows PowerShell, que usa a extensão de arquivo .ps1. O comando abaixo criará um novo arquivo chamado myPowerShellScript.ps1 no diretório atual.

nano myPowerShellScript.ps1

O editor de texto Nano abrirá dentro do PowerShell. Como você pode ver na imagem abaixo, próximo ao final diz [Novo Arquivo], indicando que o Nano abriu um novo arquivo vazio.

The Nano editor screen

Para visualizar todos os comandos de atalho disponíveis, pressione CTRL+G no seu teclado para exibir a documentação de ajuda. Comandos que começam com ^ significam que você precisa pressionar a tecla CTRL. Por outro lado, se o comando começar com M, você precisa pressionar a tecla ALT.

2. Em seguida, comece a escrever seu script usando as teclas de seta do teclado para mover o cursor. Por exemplo, digite o comando do Windows PowerShell Write-Host "Olá Mundo!" como mostrado na imagem a seguir. Quando executado, este comando imprimirá o texto “Olá Mundo!” no console.

Observe que uma vez que você modifica o conteúdo do arquivo, a palavra Modificado aparece no canto superior direito do editor. Após editar, pressione CTRL+O para informar ao Nano que você deseja salvar o arquivo.

Using the Write-Out shortcut

3. O Nano solicita que você insira o nome do arquivo para gravar as alterações. Pressione Enter para confirmar.

Saving the file

4. Por fim, para sair do Nano, pressione CTRL+X.

Se tentar sair do editor enquanto houver alterações pendentes, o Nano perguntará se deseja salvar ou ignorar as alterações. Se optar por salvar, pressione Y e especifique o nome do arquivo a ser gravado, como fez no passo 3. Caso contrário, pressione N para descartar as alterações.

Exiting Nano

5. Agora execute seu script executando o seguinte comando. O comando seguinte presume que seu arquivo esteja na pasta C:\.

& C:\myPowerShellScript.ps1

O script imprimirá a mensagem ‘Olá Mundo!’ no terminal, como mostrado na imagem seguinte.

Output of the script

Busca e Substituição de Texto

Agora que você sabe como editar e salvar um arquivo, é hora de aprender a fazer algo um pouco mais avançado: buscar e substituir strings!

Para buscar uma string, siga estes passos.

1. Primeiro, abra o arquivo de texto no editor Nano, se ainda não estiver aberto.

2. Depois de abrir o arquivo de texto, pressione CTRL+W no seu teclado para invocar o comando Onde Está.

3. Em seguida, digite a string a ser procurada ao lado do prompt de pesquisa e pressione Enter. O exemplo abaixo buscará a palavra Hello.

Searching for a string

Se a string existir no arquivo, seu cursor se moverá ao lado dela, como mostrado abaixo.

Finding the string

Para buscar e substituir uma string, proceda da seguinte forma.

1. Pressione CTRL+\ no seu teclado para abrir o menu de busca e substituição. Ao lado do prompt (para substituir), digite a string que deseja substituir e pressione Enter.

Searching for the word ‘Hello’

2. Em seguida, no prompt Substituir por, digite a nova palavra e pressione Enter. No exemplo abaixo, a palavra de substituição será Adeus.

Replacing the word

3. Por fim, escolha substituir apenas a instância atual ou todas as instâncias da palavra correspondente no arquivo. As opções são:

  • Para substituir a única instância, pressione Y.
  • Para substituir todas as instâncias, pressione A.
  • Para pular esta instância, pressione N.
  • Para cancelar a operação de substituição, pressione CTRL+C.

Neste exemplo, pressione Y para substituir a instância atual.

Confirming the search and replace operation

O Nano informará o número de ocorrências substituídas se a operação de substituição for bem-sucedida, como mostrado na imagem a seguir.

Replace occurrence count

4. Pressione CTRL+X no seu teclado para sair do Nano e pressione Y para salvar o buffer. Execute novamente seu script. A nova mensagem ‘Adeus Mundo!’ será impressa no seu terminal.

The script output

Usando o Vim como Editor de Texto do PowerShell

O Vim oferece mais recursos do que o Nano, como recuperação de sessão, coloração de sintaxe, divisão de janelas e autocompletar. O Nano é destinado a edições rápidas de arquivos, enquanto o Vim é também uma alternativa leve a um IDE.

No entanto, os recursos extras que o Vim oferece têm o custo de uma curva de aprendizado mais íngreme. Não desanime, no entanto. O Vim é um excelente editor para aprender.

Instalando o Vim

Agora é hora de começar instalando o Vim.

1. Abra o PowerShell como Administrador.

2. No terminal PowerShell, execute o seguinte comando para instalar o editor Vim.

choco install vim -y

3. Para verificar a versão do Vim, execute o seguinte comando. vim --v

vim --version
Verifying the Vim version

Editar e Salvar um Arquivo

Agora que você tem o Vim instalado, é hora de colocar a mão na massa e aprender a editar um arquivo. Antes de continuar, você deve saber que existem diferentes modos no Vim. Cada modo se comporta de forma diferente e afeta quais ações você pode realizar dentro do editor.

Os três modos comumente usados são:

  • Normal – O modo padrão assim que você abre o Vim. Este modo permite que você navegue no arquivo de texto, mas não adicione novos textos.
  • Inserir – Este modo é onde o Vim permite que você edite o arquivo. Para entrar neste modo, pressione i (não diferencia maiúsculas de minúsculas) no teclado. Para sair e voltar ao modo normal, pressione ESC.
  • Comando – Neste modo, o Vim permite que você invoque comandos como salvar o arquivo, sair do Vim ou visualizar o documento de ajuda, entre outros.

Passando para a edição de um arquivo no Vim, siga as etapas abaixo.

1. Para abrir um arquivo no Vim, execute o comando vim seguido do nome do arquivo a ser aberto. O comando abaixo abre o arquivo myPowerShellScript.ps1.

vim myPowerShellScript.ps1

O editor de texto vim abrirá, como mostrado na imagem a seguir. Observe que o comando PowerShell ‘Write-Host’ e a mensagem ‘Hello World!’ são exibidos em cores diferentes, pois o Vim suporta coloração de sintaxe.

The Vim opening view in normal mode

Se precisar visualizar o documento de ajuda do Vim, digite :h e pressione Enter. Pressionar o caractere : enquanto estiver no modo normal altera o Vim para o modo de comando, enquanto h significa abrir o arquivo de ajuda. Para sair do documento de ajuda, digite :q e pressione Enter para retornar ao modo normal.

Em seguida, entre no modo insert pressionando i. Ao entrar no modo insert, o texto -- INSERT -- aparece na parte inferior do editor, conforme mostrado na seguinte imagem.

Vim in insert mode

3. Agora que você está no modo insert, edite o arquivo como desejar. As teclas de seta permitirão mover o cursor dentro do editor.

4. Após a edição, pressione Esc para retornar ao modo normal.

5. Digite o comando :wq e pressione Enter para salvar e fechar o arquivo. O comando w salva os arquivos enquanto q sai do Vim.

Saving the file and existing Vim

Pesquisa e Substituição de Texto

Siga as etapas abaixo para pesquisar strings no Vim.

1. Abra o arquivo que deseja editar no Vim.

2. No editor do Vim, para pesquisar uma string, execute o comando abaixo, onde <string> é a string que deseja pesquisar.

:/<string>

Por exemplo, para pesquisar a palavra Hello, digite:

:/Hello

O Vim destacará as palavras correspondentes, conforme mostrado na seguinte imagem.

Para iterar por várias instâncias dos textos correspondentes, pressione n para avançar para a próxima ocorrência ou a tecla N para a ocorrência anterior.

Vim highlighting the matching words

3. Por último, para substituir cada instância de uma cadeia de caracteres em todo o arquivo, execute o comando abaixo, onde <old> é o texto a ser substituído e <new> é o texto de substituição.

:%s/<old>/<new>/g

Por exemplo, o comando abaixo irá substituir a palavra Hello pela palavra Goodbye.

:%s/Hello/Goodbye/g
Performing a search and replace in Vim

Como resultado, o Vim substituirá o texto, como você pode ver abaixo.

Vim showing the search and replace results

4. Digite o comando :wq e pressione Enter para salvar e fechar o arquivo. Execute o script novamente. A saída exibirá sua nova mensagem.

The script output

Usando o Emacs como Editor de Texto no PowerShell

Assim como o Vim, o Emacs oferece mais recursos do que o Nano. Além disso, o Emacs também é um Ambiente de Desenvolvimento Integrado (IDE). Algumas das características do Emacs incluem coloração de sintaxe, edição de vários arquivos simultaneamente e autoindentação.

Outra vantagem do Emacs sobre os outros editores neste tutorial é que o Emacs não possui modos. O Emacs também é totalmente personalizável. Se houver algo que o Emacs não ofereça, você pode adicionar suporte para isso usando Emacs Lisp.

Instalando o Emacs

Siga as etapas abaixo para instalar o Emacs.

1. Abra o PowerShell como administrador, se ainda não o fez.

2. No terminal do PowerShell, execute o seguinte comando para instalar o Emacs usando o Chocolatey. choco install emacs -y

choco install emacs -y

3. Execute o seguinte comando para verificar a versão do Emacs que você instalou. emacs --version

choco install emacs -y

Você deverá ver uma saída semelhante à imagem abaixo, mostrando a versão do Emacs no seu computador.

Displaying Emacs version

Edição e Salvamento de um Arquivo

Agora que você instalou o Emacs. E agora? Mergulhe e comece a editar um arquivo de texto para ver o Emacs em ação. Siga as etapas abaixo para editar e salvar um arquivo de texto.

1. Para abrir um arquivo no Emacs, execute o comando emacs seguido pelo nome do arquivo no PowerShell. O comando abaixo abre o arquivo myPowerShellScript.ps1 para edição. O switch -nw diz ao emacs para abrir o editor dentro da janela de terminal atual (PowerShell) e não em uma GUI separada. emacs -nw myPowerShellScript.ps1

emacs -nw myPowerShellScript.ps1

Vários menus suspensos estarão disponíveis no topo do editor. Para visualizar a documentação de ajuda do Emacs, clique no menu suspenso Ajuda.

Opening a file in Emacs

2. Edite o arquivo conforme desejado e, uma vez que tenha concluído suas edições, salve as alterações pressionando CTRL+X e CTRL+S consecutivamente. Você verá a confirmação de salvamento do arquivo na parte inferior do editor, como mostrado abaixo.

Saving the file

3. Para sair do editor, pressione CTRL+X no teclado, seguido por CTRL+C.

Busca e Substituição de Texto

Agora que você conhece o básico do Emacs, como realizar uma operação de busca e substituição? Siga as etapas abaixo para fazer isso.

1. Press CTRL+S e digite o texto a ser pesquisado ao lado do prompt I-search para buscar um texto. O exemplo abaixo procura pela palavra Hello.

Searching for text

2. Para iniciar a opção de busca e substituição, pressione ALT+% no seu teclado (o mesmo que ALT+SHIFT+5).

3. Em seguida, digite o texto a ser pesquisado ao lado do prompt Query replace: e pressione Enter.

Searching for the text to replace

4. Depois, digite o texto de substituição ao lado do prompt e pressione Enter.

Entering the replacement text

5. Finalmente, no prompt Query replacing <old text> with <new text>:, pressione ! para confirmar e substituir todas as ocorrências do texto.

Replacing all instances of the matching text

Como resultado, o Emacs substituiu o texto, como você pode ver abaixo. Além disso, o Emacs mostra o número de ocorrências do texto substituído na parte inferior do editor.

Emacs replaced the search text

6. Saia do editor pressionando CTRL+X no seu teclado, seguido por CTRL+C. Execute o script novamente. A saída exibirá sua nova mensagem.

The script output

Conclusão

Em todo este tutorial, você aprendeu o básico do uso de três editores de texto do PowerShell e os benefícios de cada um. Da próxima vez que precisar editar um arquivo a partir do terminal, não perca tempo configurando um editor de texto externo. Simplesmente abra o Nano, Vim ou Emacs e faça suas alterações em poucos toques!

Qual editor de texto do PowerShell você mais gostou? Você conhece outros editores de texto que não estavam neste tutorial?

Source:
https://adamtheautomator.com/powershell-text-editor/