Dominar o Linux – no sentido de ser fluente em uma distribuição – está cada vez mais distante de ser um diferencial para os profissionais de TI. Grande parte das tecnologias que são cada vez mais desejadas pelas empresas “nasceram” usando o pinguim e, por mais que funcionem quase sempre bem no Windows, têm uma relação muito mais natural com o Linux, como por exemplo Python e Ruby.

Mas, muito além de um tópico a mais no seu currículo, explorar a linha de comando do Linux pode ser muito vantajoso e bastante prático, principalmente para quem gosta de programação, digamos, “curta e grossa”: algumas linhas que simplesmente resolvam problemas – às vezes grandes problemas. Problemas que vão, literalmente, de renomear milhares de fotos a implantar vários servidores… de uma só vez.

Neste ponto chegamos ao Bash, a “tela preta” nada sexy. O Bash é, basicamente, um shell (ou interpretador de comandos). Um shell fica eternamente esperando que você forneça algum comando, então processa este comando e lhe dá uma resposta.

Veja um exemplo básico de sessão no Bash:

~$ echo 'Olá, mundo!'
Olá, mundo!
~$ date
Mon Feb 10 23:04:53 BRST 2014
~$

Repare que, após receber, avaliar e executar cada comando (imprimir mensagem e mostrar a data e hora do sistema), o Bash continua aguardando outro comando… que talvez nunca virá.

Shell scripting: Bash “with lasers”

Você então começa a descobrir umas coisas legais sobre o Bash e já arrisca alguns comandos, mas tem que digitar tudo toda vez que for preciso, comando a comando. Ou não.

Felizmente a solução é simples: shell scripting, amigo(a). No nosso caso, Bash scripting!

Um shell script é um arquivo de texto com vários comandos. Ponto. Você diz quem deve processar o arquivo (Bash, Dash, Python etc.), escreve os comandos nessa linguagem e é isso… manda rodar! Simples.

Veja o conteúdo do arquivo meu-script.sh:

#!/bin/bash

echo 'Olá, mundo!'
cd /var/www
echo "Agora estou no diretório $PWD"
date
echo "Fim do meu script."

Agora, no shell…

~$ chmod +x meu-script.sh
~$ ./meu-script.sh
Olá, mundo!
Agora estou no diretório /var/www
Mon Feb 10 23:49:52 BRST 2014
Fim do meu script.
~$

E aqui a semente do mal é plantada: chmod, ponto-barra… pois é.

Mas esses são detalhes que ficam mecânicos com pouco tempo (mesmo) de prática. A cada novo comando e script escrito, a cada pequeno grande feito você vai percebendo como a tela preta pode ser legal. E então o mouse começa a parecer algo que às vezes lhe atrasa… mas isso é assunto para outro post!

No minicurso de Bash vamos começar nas noções básicas da linha de comando e “preparar o terreno” para quem quiser continuar a hackear dentro dela, com exemplos, macetes, dicas e indicações de livros e outros materiais.

Fique de olho também em nossa programação: teremos uma Install Fest para quem quer instalar o Linux sem mandar o Windows e outros arquivos para o espaço, além de muita coisa interessante sobre desenvolvimento, intercâmbio e mais!

Se você possui dúvidas ou sugestões, fique à vontade: escreva um comentário logo abaixo ou em nossa página do Facebook!

Abraço e até lá!

exit 0