Arquivos de Tags: scripts

Make vs Ant — Automatizadores de tarefas

Make vs Ant é a batalha de quem precisa automatizar compilações, limpeza e geração de documentação no projetos, facilitando a vida do desenvolvedor e tirar o calvário de gerar um “nightly build” diariamente.

Make vs Ant

Existe o make, que já é muito conhecido pelos dinossauros da programação onde utilizam até hoje para automatizar o processo de compilação dos fontes principalmente, enquanto o ant muito utilizados pela turma do java, abaixo segue as sutileza das duas ferramentas:

Wikipédia escreveu:

A mais aparente diferença entre as ferramentas Ant e make, é que a primeira utiliza um arquivo no formato XML para descrever o processo de construção (build) e suas dependências, enquanto o make possui o seu próprio formato de arquivo, o Makefile. Por padrão este arquivo XML tem o nome build.xml.

Um dos principais objetivos do Ant é resolver os problemas de portabilidade do make. Num arquivo Makefile (o arquivo lido pelo make) as ações para construir o projeto (por exemplo, gerar um arquivo executável) são disparadas por comandos do sistema operacional (ou mais especificamente, da sua shell), usualmente uma shell Unix. O Ant resolve este problema através do grande número de funcionalidades próprias, e que garante que se comportarão identicamente (em tese pelo menos) em todas as plataformas.

Perl, assim como toda linguagem scripting consegue solucionar o proposto pelo make vs ant

Perl, assim como toda linguagem scripting consegue solucionar o proposto pelo make vs ant

Perl toda distribuição tem!

Esse é outra linguagem de script, além do Python, Ruby e o Shell, conforme já expliquei aqui. E esta disputa de make vs ant ganha outras dimensões com estes competidores.

O Perl encontra-se em toda distribuição Linux que se preza tem suporte por default desta linguagem. No CPAN, onde é depositados as impressionantes quantidades de módulos e que tem o lema:

Nós não importamos com a qualidade, não importamos com o propósito, apenas queremos hospedar seus módulos

Hoje em dia o Perl, a linguagem está fora de forma sem muitos recursos porém muita gente nos bastidores fazendo melhorias para a comunidade, tais como o Modern::Perl! O companheiro de longa data em java precisou entrar neste mundo e trouxe para nós o que encontro no fantástico mundo do Perl.

Pode automatizar suas usando as mais variadas linguagem de scripts. Já vi casos de utilizar linguagens para fazer automatização, usando o cron para disparar a atividade. Lembrando que todas linguagem mostradas aqui podem ter um grau de complexidade, exceto a batalha do make vs ant que faz o proposto

 

Powershell — Powers para prompt de comando

O Powershell é o novo prompt de comando para servidores da Microsoft em substituição e é extremante poderoso ao ultrapassado, então apresento e convido a conhecer o Microsoft Powershell!

Powershell, uma melhoria para servidores

Era ruim trabalhar no servidor com antigo prompt de comando, além de muito ultrapassados e extremamente limitado que era o cmd.exe, é possível usar na versão do Windows XP e posteriores. Ele é uma cópia dos shell e tem recursos de semelhantes plataformas unix(es), aceitando pipelines outros recursos, empatando o uso com o Linux.

Uma sessão do powershell

Uma sessão do powershell

Caso sua empresa ainda te segura para melhores horizontes na programação acrescente este “plus” em seu servidor que poderá te ajudar nas mais diversas ocasiões ocasiões!

Conclusão

O Windows server acordou para vida para agilizar processos no servidores, já que os recursos seja maximizados usando um powershell também além de retirar a interface gráfica que demanda muitos recursos como memória e vídeo, sendo dispensável em missões onde não apresentam informações para o sysadmin na interface de saída como o IIS e entre outros. E isso é uma mudança de conceito sobre os uso de recurso, vale a pena conferir! 😀

Esqueci de mostrar o link para para baixar? Você encontra aqui para Windows 2008 e necessita pré-requisito a plataforma .NET para ser executado.

Parametros shell script e o poder dos xargs

Para este post vou escrever sobre o poderoso prompt, precisei pegar uma lista e passar parametros shell script, e o Barrabin Barrabash presente nos unixes e unixes-like e até a Microsoft não resistiu a tentação e criou seu prompt no estilo unix que é o powershell.

Parametros shell script, porquê dessa necessidade?

Eu precisava limpar minha distro que continha uma quantidade considerável de pacotes órfãos para expurgar e o deborphan só mostra quais são os pacotes estão precisando de limpeza, e fazer a limpeza seria muito dolorosa e resolvi usar o xargs, lembrando a tirinha acima e funcionou na boa e está agora tudo limpinho e pega aí a sentença caso precisar de dar um trato na sua distribuição linux 😉 no Hacktoon tem muitas tiras, ok!

Barrabin Barrabash compassagem de parametros shell script

Barrabin Barrabash e os shell terrorists

O comando magico que usei para solucionar meu problema é este:

# deborphan | xargs apt-get purge -y

Para mim foi uma luva e para vocês?

SSH fácil para facillitar seu trabalho

Para fazer o calvário para ssh fácil, encontra-se no meu github um script que reúne ações para túnel, fowarding e cópia de arquivos usando o poderoso ssh para criptografia. é feito em python por questão de utilidade já que possivelmente irei fazer uma GUI.

https://github.com/farribeiro/utilitarios/blob/master/shg.py

Com isso deixa o ssh fácil, vou procurar novos usos e incrementar e espero grande utilidade

Um novo script para a galeria

Para dar mais gostinho na coisa, estou também trabalhando em um script muito interessante que tem finalidade de facilitar a personalização de distribuições. O que tenho em mente:

  • automatizar a instalação de pacotes
  • Centralizar canais de pacotes personalizado, principalmente Ubuntu, a.k.a PPA
  • Cópia de configurações, mapeamento e esqueleto das pastas de configurações

Conclusão

A facilidade de ter os funcionalidade mais usadas que é semelhante ao apt-get, svn e git, para ter um ssh fácil que a quantidade de combos para usar o SSH precisa sempre rebuscar sempre no manpage.

PS: Vi recentemente, um artigo interessante para disseminar configurações entre o servidores httpd da Apache Software Foundation e que ficará devendo um link, para meu amigo @tiagonux recolocar o texto para a galera.

PS#2: E um caso de uso para automatizar a proliferação do aplicativo entre os servidores e também outro caso que utilizava o github e passaram a utilizar o torrent pois não devem mostrar em hipótese alguma a grande baleia azul 😉 Twitter usa BitTorrent nos servidores para atualizar site

PS#3: Assim que tiver algo usável estarei colocando no github e um link no blog e por enquanto vou postar somente links para os scripts, se encontrar integrar ao artigo estarei implementando imediatamente para esse e outros que tenha uma experiencia melhor no blog!

Aprendendo REGEX — Princípio da utilização

Em mais uma de minha investidas, não é aplicativo/programa e sim um recurso de busca e substituição implementada pela maiorias de editores de textos e IDE. Então vamos colocar a mão na massa aprendendo regex?

Para quem não sabe esses editores de textos, não passa mais de um “NOTEPAD” super turbinado, isso mesmo, cheio de recursos bacaninha principalmente para quem pratica desenvolvimento, seja fazer web sites, webapps(hoje em dia chamamos de programas na nuvem, onde tudo roda e tem acesso dentro do seu navegador) e mesmo programas para seu computador com telinha e tudo mais. Se viajarmos nessa maionese vai ser um romance e muitos aqui é bem caidinho quem matou quem no ultimo capitulo, contarei ele em uma outra hora e agora é hora para nós estarmos aprendendo regex!

Procurando e aprendendo regex

Procurando e aprendendo regex

Voltando ao que interessa, iremos falar de expressões regulares! Podemos aplicar regex para mais diversos fins, ajudando muito em trabalho repetitivo como no caso de alterar uma lista de telefones com mais de 1000 entradas… Caramba! É é muito trabalho, ou validar se foi digitado está de acordo para ser armazenado ou mesmo precisar de retirar valores de um relatório e guardar e manipular posteriormente.

Enfim aprendendo regex

Disclaimer: Deixo claro que a implementação das expressões varia dos programas utilizados, fique atento o que ele aceita, quebrei muita cabeça por causa disso.

Vou dar exemplos para Linux, mas não difere muito de grosso modo o entendimento, usaremos um aplicativo próprio para tratamento dessas expressões regulares na saída do terminal, supomos que queremos fazer uma listagem de telefones e filtrar por determinada ocorrência:

$ cat telefone.txt
Nome      Telefone
fulano    (00)00000000
beltrano  (11)11111111
ciclano   (22)22222222
fábio     (33)33333333
cíntia    (44)44444444
andré     (55)55555555
$ grep 'a' telefone.txt 
fulano    (00)00000000
beltrano  (11)11111111
ciclano   (22)22222222
cíntia    (44)44444444
andré     (55)55555555

O comando que executamos, é o grep, este comando tem como principal finalidade de filtragem de saída. No exemplo abaixo listamos o conteúdo do arquivo para ver o que nele contém, note ao fazer o comando grep ele retirou a única entrada que não contém “a”, ou seja Fábio. eu poderia parar por aqui como precisamos uma introdução pouco mais profunda nós iremos progredir, queremos agora que só os que começa com a letra “c” apareça, então iremos utilizar um carácter ^, ficando assim:

$ grep '^c' telefone.txt
ciclano   (22)22222222
cíntia    (44)44444444

Esse caractere é uma constante, fazendo parte da expressão mas dá para colocar ele como o que está buscando e a maioria dos usando um \ e com esse você pode indicar qualquer constante para fazer parte da busca.

Com isso já delongamos esta parte do assunto pois sua extensão e aplica em muitos casos. Também para não deixar o texto cansativo 😉 Agora Interessou? quer mais material e boa qualidade e você encontra! No site do Aurelio este cara é convicto e evangelizador de expressões regulares em língua portuguesa. Vale a pena acompanhar o blog dele, eu agarantio!

Optimization WordPress Plugins & Solutions by W3 EDGE