Ferramentas úteis para SysAdmins que escrevem scripts (Parte I)

Partilhar

Junte-se a nós neste artigo sobre algumas das ferramentas úteis para qualquer SysAdmin que desenvolva scripts, sendo que nesta primeira parte vamos dedicar-nos a analisar os editores de código mais eficientes para desenvolvimento de scripts.

Vamos falar sobre vários editores, mas o foco estará principalmente no PowerShell, já que a maioria das coisas serão realizadas nesta linguagem de scripting.

Este é um tópico complicado, que pode começar como uma conversa descontraída sobre as características de cada editor e terminar com uma forte discussão sobre qual deles é o melhor.

Para as pessoas que ainda não tiveram de passar por uma dessas discussões, aqui está um segmente da série Silicon Valley onde, embora não discutam diretamente sobre os editores de código (exceto pela pequena referência ao Vi e Emacs), discutem sobre Tabs vs. Spaces – outra discussão típica de developers.

Neste caso, vamos listar alguns editores, e no futuro vamos falar sobre ferramentas adicionais que facilitam a vida dos administradores de sistemas que também precisem de desenvolver scripts.

Vamos começar pelos editores de código mais típicos, posteriormente veremos alguns com funcionalidades mais avançadas, e depois outros mais ligados à própria edição de código.

 

Os editores de código mais eficientes para desenvolver scripts:

 

Vi (e a sua família):

Começamos com um velho conhecido para quem vem do mundo UNIX (ou GNU/Linux), o Vi (Visual), o editor de texto por excelência e as suas versões gráficas aprimoradas, como o GVim.

O Vi é um editor de texto realmente antigo, já que foi lançado há 46 anos (1976) por Billy Joy. Foi desenvolvido em código C, uma das linguagens mais utilizadas no mundo, principalmente naquela época, e lançado sob Licença BSD.

O GVim é uma versão gráfica com muitos recursos desenvolvida para a área de trabalho do Windows (e outras plataformas), que podemos descarregar no site do projeto GVim.

Este editor de texto permite pesquisar, substituir, realçar a sintaxe (ou colorir) e muitas outras coisas, incluindo protetores de ecrã personalizáveis ​com vários motivos.

Quem quiser aprender a usá-lo pode visitar esta entrada da Wikipedia que inclui os comandos necessários nos seus diferentes modos.

Pessoalmente, uso este editor há mais de 15 anos e a grande vantagem no seu uso é que permite trabalhar da mesma forma em qualquer plataforma.

Imagem. Ecrã de edição de código no gVim.
Imagem. Ecrã de edição de código no gVim.

 

Emacs:

O editor de texto que faz com que os seus dedos joguem ao Twister! Com fama de ser um osso duro de roer, habituar-se a trabalhar com ele costuma ser uma tarefa árdua, mas traz grandes vantagens para quem o consegue.

Ainda me lembro de como foi traumático usar o Emacs pela primeira vez, e isso foi há mais de 20 anos!

O Emacs foi desenvolvido por Richard Stallman, pai do projeto GNU, do qual pendem grandes projetos como GNU/Linux, Apache, etc., no ano 76 do século passado, e foi publicado sob a licença GPL (General Public License).

A grande vantagem do Emacs é basicamente a mesma do Vi (gVim): pode funcionar da mesma forma em qualquer plataforma. Por outro lado, se o Vi pode ser um pouco complicado no começo, o Emacs é um inferno.

Os primeiros acessos ao programa costumam ser acompanhados de desorientação total e desconhecimento do que pode ser feito, mas, por outro lado, uma vez aprendido, é de longe o editor mais poderoso.

Para descarregar o programa na plataforma Microsoft Windows, pode aceder ao site do Projeto GNU Emacs onde se encontram os links e instruções para instalá-lo em diferentes versões de sistemas operativos como GNU/Linux, BSD, MacOS e Windows, bem como documentação de uso.

 

Nano:

Outra opção para quem quer manter o seu editor preferido dentro do mundo GNU/Linux ou UNIX é o Nano. O Nano é um editor de texto que podemos classificar como tradicional, mas é muito mais fácil de usar do que o Vi e, claro, o Emacs.

O Nano é um editor programado em C e baseado em Pico, que foi lançado em 1999 sob licença GPL, e que foi adotado por inúmeros administradores no mundo do software livre pela sua facilidade de uso.

O software não tem muitas das vantagens que podemos encontrar no Vi e Emacs, mas permite uma edição rápida e flexível.

Quem quiser experimentar ou já conhece e quiser usar também no Windows, pode obter a versão para Microsoft Windows no link Projeto Nano Editor.

Assim como no GVim ou no Emacs, podemos obter muito mais do editor com os Atalhos para Nano.

 

Notepad++:

E finalmente chegamos a um editor de texto que não vem do mundo UNIX, embora tenha sido desenvolvido como código livre (open source) e coberto pela licença GPL. Desenvolvido em C++ e lançado em 2003, foi desenvolvido para uso no Windows como um editor de texto com realce de sintaxe para código fonte.

Ao contrário dos anteriores, o Notepad++ não pode ser usado nativamente no GNU/Linux. Para isso é necessário instalar o WINE, uma camada intermediária para poder executar no GNU/Linux aplicações desenhadas para Windows e MS-DOS.

Para descarregar o instalador do Notepad++, deve visitar a área de downloads do site do Projeto Notepad++.

A grande vantagem do Notepad++ sobre os anteriores é a sua simplicidade; Embora existam modos especiais e combinações de teclas que podem ajudar-nos a otimizar a nossa forma de trabalhar, não são necessários e podem ser completamente ignorados, já que existe uma fantástica barra de menus a partir da qual podemos realizar milhares de tarefas.

O melhor deste editor, pelo menos para mim, é que permite abrir uma infinidade de abas nas quais podemos manter tudo aquilo de que precisamos, e se o computador reiniciar ou fecharmos a aplicação por engano, tudo estará lá quando começarmos de novo.

 

PowerShell ISE:

O PowerShell ISE (Integrated Scripting Environment) é uma aplicação nativa do Windows em todas as suas configurações atuais que foi desenhado para trabalhar com o PowerShell.

Permite várias formas de trabalho:

  • Por um lado, permite a execução clássica de comandos do PowerShell, como se estivéssemos a trabalhar numa interface normal.
  • Por outro lado, permite trabalhar da forma como trabalharíamos tradicionalmente com um IDE.

Quando falamos sobre a forma tradicional de trabalhar com um IDE, queremos dizer que a aplicação nos vai mostrando opções de preenchimento automático, marcar erros de sintaxe e até corrigi-los enquanto vamos escrevendo código, além de permitir testar o código por secções.

Neste sentido, esta seria a primeira opção que nos oferece todas estas funcionalidades. E é lógico que assim seja, pois é nativo da Microsoft para o PowerShell.

As opções de otimização e de preenchimento automático, entre outras, ajudam-nos bastante, e podemos melhorar o nosso desempenho assim que nos habituarmos ao ambiente, que tem uma curva de aprendizagem mínima.

Por se tratar de um programa nativo, não é necessário descarregá-lo ou instalá-lo, basta executá-lo com o comando PowerShell_ISE, que inicia a aplicação, ou aceder a “c:\windows\system32 \”, localizá-lo e iniciá-lo manualmente (%windir%\system32\WindowsPowerShell\v1.0\PowerShell_ISE.exe).

Imagem. Exemplo de preenchimento automático no PowerShell ISE.
Imagem. Exemplo de preenchimento automático no PowerShell ISE.

 

Sapien PowerShell Studio:

O PowerShell Studio é um IDE desenvolvido pela Sapien Technologies Inc. e cuja versão mais recente é de 2023, com suporte para todas as versões do PowerShell.

O PowerShell Studio é bastante completo e tem todas as funcionalidades típicas de um IDE, como marcação de sintaxe com cor, propostas de comandos, correção de erros, execução por etapas, etc.

Além disso, tem muitos outros recursos típicos, como preparação de pacotes, integração com Git e um recurso de prevenção de perda de dados através de recuperação de ficheiros.

Em geral, é uma boa opção com uma grande ressalva: não é um editor grátis, tem assinatura mensal ($25), anual ($250) ou vitalícia ($450). Quando falamos de IDEs pagos tenho uma preferência bem clara, que é o Visual Code .

Caso queira descarregar o IDE na sua versão trial ou comprá-lo, deve visitar o seguinte link: PowerShell Studio.

Além disso, se quiser aprender mais sobre este editor, pode ler o Manual do PowerShell Studio.

Imagem. Ecrã de edição de código no PowerShell Studio.
Imagem. Ecrã de edição de código no PowerShell Studio.

 

Visual Studio Code:

O Visual Studio Code é um editor gratuito e de código aberto (licença MIT) desenvolvido pela Microsoft e lançado em 2015, muito popular entre developers de todos os tipos, incluindo developers de scripts do PowerShell.

Entre as suas principais vantagens está o facto de ser gratuito, de código aberto e com uma forte comunidade, o que acontece com quase todos os editores que analisamos anteriormente, além de ter um grande número de extensões. Também não podemos esquecer que foi especialmente desenvolvido para se integrar perfeitamente com o Git.

Possui um grande volume de linguagens suportadas e muitas ajudas, como marcação de sintaxe, preenchimento automático de comandos ou correção de código (não disponível para todas as linguagens).

Outro ponto muito interessante é o facto de ser muito utilizado em educação, tanto formações oficiais da Microsoft como em centros de estudos de formação profissional, graduação ou pós-graduação universitária, por isso é possível que já o conheça.

O executável pode ser descarregado do site do Visual Studio Code onde também se pode encontrar documentação, fóruns, extensões, etc.

Esta é sem dúvida a melhor opção se queremos um bom editor que suporte um grande número de linguagens e que seja poderoso, flexível e gratuito.

Imagem. Ecrã de edição de código no Visual Studio Code.
Imagem. Ecrã de edição de código no Visual Studio Code.

 

Visual Studio Professional:

O Visual Studio Professional é a opção profissional para o Visual Studio Code. Possui versão para Windows e macOS e foi desenvolvido pela Microsoft em C++ e C#, tendo a sua primeira versão sido lançada em 1997 em formato proprietário.

NOTA: Existe uma versão do Visual Studio Professional para macOS e Windows, mas no GNU/Linux é possível optar pelo Visual Studio Code.

Tem todas as opções que o Code oferece, além de uma série de aprimoramentos, recursos como crédito do Azure e suporte para Azure DevOps.

Aqui já estamos a falar de outro patamar, tanto em funcionalidade como em custo, que é bem alto.

A licença de uso mensal é de $ 45 para a assinatura profissional e $ 250 para a assinatura Enterprise, ambas com o plano básico do Azure DevOps, mas o Enterprise inclui um período de trial. Neste link pode ver as condições do contrato Enterprise.

 

 

Conclusões:

Como pode ver, há várias opções de ambientes nos quais podemos desenvolver scripts, e estes fornecem-nos mais ou menos funcionalidade dependendo daquilo que estamos à procura.

Um administrador pode simplesmente querer um editor que permita trabalhar com vários tipos de código e com deteção de sintaxe, e não precise de mais nada, enquanto outra pessoa pode querer ter tudo integrado numa interface que permita editar, compilar, etc., com várias linguagens, para não ter de saltar continuamente entre diferentes ferramentas.

Pessoalmente, sempre defendemos o uso de um editor como Vi ou Emacs, que permitem ter a mesma experiência em diferentes sistemas, mas temos de admitir que é muito mais simples usar um Notepad++ ou até um IDE como o ISE da Microsoft, já para não falar no poder do PowerShell Studio ou do Visual Studio.

Seja qual for a sua escolha, esperamos que a informação deste artigo tenha contribuído positivamente. Continuaremos a trazer-lhe mais artigos sobre este tipo de ferramentas e muitas outras. Entretanto, pode ler os artigos já existentes no nosso blog.

Obrigado por acompanhar-nos!

Categorias:Sysadmin

Outros artigos que podem interessar-lhe

21 de Fevereiro de 2024
Como empresa de software, é possível que tenha sentido atração pela reputação, variedade de serviços e solidez de algum
21 de Fevereiro de 2024
Para muitas empresas de software, ter uma infraestrutura própria significa independência e controlo, bem como uma potencial fonte de
21 de Fevereiro de 2024
Para um ISV, escolher o fornecedor de serviços cloud ideal é uma decisão crucial que pode impactar a satisfação