Programar em Shell - Script só para os baixinhos
Vira e mexe eu ouço uma velha frase: Shell Script é a linguagem mais fácil que pode existir, é muito fácil programar em Shell. Essa afirmação é correta com certeza, a sintaxe é de fácil entendimento, porém, assim como toda linguagem de programação, ela é complexa também, temos que ser realistas. Muitos programam em Shell, mas poucos realmente dominam. Este artigo vem para fortalecer o fórum do VOL e os iniciantes, a intenção é para ajudar aos iniciantes a escolher esta linguagem como a primeira, já que ela é simples, poderosa e complexa.
Parte 2: Querido shell script
Vira e mexe, eu ouço uma velha frase: shell script é a linguagem mais fácil que pode existir, é muito fácil programar em Shell.
Essa afirmação é correta com certeza, a sintaxe é de fácil entendimento, porém, assim como toda linguagem de programação, ela é complexa também, temos que ser realistas... Muitos programam em Shell, mas poucos realmente dominam.
Esta dica vem para fortalecer o fórum do VOL e aos iniciantes... a visão é para ajudar os iniciantes a escolher está linguagem como a primeira, já que ela é simples, poderosa e complexa. Vou abordar sobre os benefícios e rodar a 'baihana' também, quero um equilíbrio nesta dica, prós e contras.
Vi e queria desver, coisas na internet que desprezam a poderosa linguagem do Shell:
"se você não é Sysadmin e não trabalha com isso não leve esta linguagem tão a sério, apenas entenda."
Estas pessoas provavelmente criam arquivos com o touch! haha
As pessoas que falam isto estão certas na opinião delas, eu não vou dizer que não.
Mas dá pra fazer com o Shell o que qualquer outra linguagem faria, e deixa eu te sussurrar algo! (MELHOR/MENOR), melhor e menor? Tá de brincadeira, é serio? Claro que eu estou falando a verdade, dá pra fazer em uma única linha o que se faria em 40 linhas ou mais no Java, sem falar que é muito mais rápido, dizem que o Shell só perde para o C em questão de velocidade de execução... bom é o que dizem. Eu não programo em C, mas deixo aqui o meu debate, seja gentil e comente a sua opinião.
Not compile, just run!
Shell script não é uma linguagem que precisa de compilação, ela é uma linguagem interpretada, então meu baixinho (xuxete falando), apenas execute e teste, faça 200 linhas de código e apenas execute. Deu erro? O bash vai te mostrar aonde, ahhh mas eu quero ver linha a linha, utilize o "bash -x nomedoprograma", que é um poderoso debug do próprio bash, ele irá mostrar passo a passo do que está acontecendo em seu programa e aonde você está falhando.
Deu erro? Apenas abra seu editor, edite e rode novamente!
Sensacional não? Pois é, isso é um benefício e provavelmente te deixará preguiçoso quando o assunto é aprender linguagens compiladas!
Existe um truque que você pode compilar e tornar o seu programinha binário, procure por (SHC) ou leia essa dica aqui do VOL:
Esta técnica é interessante, às vezes, o programador fez um programa que irá ser vendido e tem uma licença específica, mas não quer liberar o seu código, ou o código é restrito somente à empresa e não pode ter vazamento, se vazar não tendo chances para hacker ler o fonte e achar uma vulnerabilidade.
Bom, cada um faz o que bem entender, a ferramenta existe e estou lhe apresentando senhores, sou a favor quando o assunto é segurança (sem mi-mi-mi), sou especialista em segurança GNU/Linux, trabalho com servidores desde os 15 anos e na multinacional em que trabalho, utilizamos está técnica em alguns programas que precisam ser restritos.
Essa afirmação é correta com certeza, a sintaxe é de fácil entendimento, porém, assim como toda linguagem de programação, ela é complexa também, temos que ser realistas... Muitos programam em Shell, mas poucos realmente dominam.
Esta dica vem para fortalecer o fórum do VOL e aos iniciantes... a visão é para ajudar os iniciantes a escolher está linguagem como a primeira, já que ela é simples, poderosa e complexa. Vou abordar sobre os benefícios e rodar a 'baihana' também, quero um equilíbrio nesta dica, prós e contras.
Vi e queria desver, coisas na internet que desprezam a poderosa linguagem do Shell:
"se você não é Sysadmin e não trabalha com isso não leve esta linguagem tão a sério, apenas entenda."
Estas pessoas provavelmente criam arquivos com o touch! haha
As pessoas que falam isto estão certas na opinião delas, eu não vou dizer que não.
Mas dá pra fazer com o Shell o que qualquer outra linguagem faria, e deixa eu te sussurrar algo! (MELHOR/MENOR), melhor e menor? Tá de brincadeira, é serio? Claro que eu estou falando a verdade, dá pra fazer em uma única linha o que se faria em 40 linhas ou mais no Java, sem falar que é muito mais rápido, dizem que o Shell só perde para o C em questão de velocidade de execução... bom é o que dizem. Eu não programo em C, mas deixo aqui o meu debate, seja gentil e comente a sua opinião.
Not compile, just run!
Shell script não é uma linguagem que precisa de compilação, ela é uma linguagem interpretada, então meu baixinho (xuxete falando), apenas execute e teste, faça 200 linhas de código e apenas execute. Deu erro? O bash vai te mostrar aonde, ahhh mas eu quero ver linha a linha, utilize o "bash -x nomedoprograma", que é um poderoso debug do próprio bash, ele irá mostrar passo a passo do que está acontecendo em seu programa e aonde você está falhando.
Deu erro? Apenas abra seu editor, edite e rode novamente!
Sensacional não? Pois é, isso é um benefício e provavelmente te deixará preguiçoso quando o assunto é aprender linguagens compiladas!
Existe um truque que você pode compilar e tornar o seu programinha binário, procure por (SHC) ou leia essa dica aqui do VOL:
Esta técnica é interessante, às vezes, o programador fez um programa que irá ser vendido e tem uma licença específica, mas não quer liberar o seu código, ou o código é restrito somente à empresa e não pode ter vazamento, se vazar não tendo chances para hacker ler o fonte e achar uma vulnerabilidade.
Bom, cada um faz o que bem entender, a ferramenta existe e estou lhe apresentando senhores, sou a favor quando o assunto é segurança (sem mi-mi-mi), sou especialista em segurança GNU/Linux, trabalho com servidores desde os 15 anos e na multinacional em que trabalho, utilizamos está técnica em alguns programas que precisam ser restritos.
Gostei muito do artigo
Isso me inspirou bastante, Valeu mesmo, eu tava precisando ler algo assim.
LMC