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