Se você já escreveu, baixou ou abriu um script bash, certamente você já se deparou com uma primeira linha um tanto estranha que nem todo mundo sabe o que significa e por que deve ser colocada lá. Estou me referindo a #!/bin/bash. Bem, neste artigo você poderá conhecer todos os detalhes sobre como é chamado, para que serve e se é sempre o mesmo ou se há algumas alterações.
O que é uma linguagem interpretada?
Un linguagem de programação interpretada é aquele que não precisa ser compilado para ser executado, mas pode ser executado diretamente do código-fonte usando um interpretador, que nada mais é do que um programa que pode traduzir o código em instruções compreensíveis por máquina. Isso traz algumas vantagens:
- multiplataforma: como não é binário, pode ser executado em várias plataformas sem modificação, o que é uma clara vantagem se quisermos que o código funcione em qualquer sistema.
- Portabilidade: se o interpretador estiver pronto para a plataforma, o script ou idioma interpretado funcionará nessa plataforma.
No entanto, essas linguagens interpretadas também têm suas desvantagens:
- Uma delas é o rendimento, pois eles precisam do interpretador sempre em execução em segundo plano para que funcione.
- A própria dependência do intérprete.
Como um exemplo de idiomas interpretados Alguns podem ser mencionados, como Java, C#, JavaScript, Visual Basic .NET e VBScript, Perl, Python, Lips, Ruby, PHP, ASP, etc.
O que é um script?
Shell Scripting: Exemplos Práticos
Un script é apenas código criado com uma linguagem de programação interpretada para executar uma tarefa. Geralmente é um programa simples, com um evento de comandos ou ordens que são executados sequencialmente.
O que é #!/bin/bash (shebang)?
Conteúdo do roteiro no Mousepad
Por fim, o tema deste artigo é que famoso #!/bin/bash, que é conhecido na linguagem Unix como Shebang. Embora este seja o mais comum, nem sempre é necessário utilizá-lo para que o script funcione. Outros projetos também têm seus próprios shebangs, como #!/usr/bin/env python3, #!/bin/sh, etc.
O objectivo shebang está simplesmente fornecendo o caminho completo do shell, para que ele possa ser localizado onde quer que o script seja executado. Além disso, como você pode ver, não apenas o caminho é determinado nele, mas também o interpretador, nesses casos Bash, Python 3 e outros interpretadores para trabalhar.