next up previous
Next: Tarefas Up: FMA 215 Aula 12: Previous: FMA 215 Aula 12:

Alguns Conceitos Relevantes

Além de ter a sua utilidade básica de rodar programas e estabelecer a interface de comunicação entre o usuário e o sistema, a shell pode ser usada para atividades de programação, o que é particularmente útil para a programação da própria estrutura do sistema, mas que também pode ser muito útil para as atividades dos usuários na linha de comando. Como já vimos antes, podemos definir, manipular e usar variáveis dentro da shell. Além disso, ela contém várias estruturas de controle que nos permitem conceber e realizar operações complexas, como veremos nesta apostila. Estas variáveis e estruturas de controle podem ser combinadas com quaisquer dos comandos do sistema, incluindo comandos e programas que o próprio usuário tenha escrito, para a criação de programas de shell que, através da manipulação de texto ASCII, realizem as mais variadas tarefas dentro do sistema.

Assim, vista como uma linguagem de programação, a estrutura da shell é um tanto diferente da estrutura de uma linguagem de programação tradicional. Apesar de ter um número fixo de estruturas de controle, ela pode ter um número ilimitado de comandos disponíveis, pois pode fazer uso de qualquer comando já existente ou que os usuários venham a incluir no sistema. Estes novos comandos devem obedecer apenas ao simples critério de ler texto do canal padrão de entrada stdin e escrever texto para o canal padrão de saída stdout. Como eles podem ser escritos em quaisquer das linguagens de programação tradicionais, tais como C, Pascal e Fortran, todas as possibilidades destas linguagens estão, em princípio, à disposição do programador de shell. Entretanto, como veremos, com um pequeno número de comandos muito básicos já existentes no sistema é possível escrever uma infinidade de programas para os mais variados fins.

Por outro lado a linguagem da shell, sendo uma linguagem de programação interpretada e não compilada como é o caso das já citadas linguagens tradicionais de programação, não se presta para a otimização em termos de tempo de processamento. Ela se presta bem para a escrita de programas complexos nos quais a preocupação com eficiência de execução não seja tão grande quanto a preocupação com a praticidade e rapidez para se escrever os programas. Todas estas possibilidades de uso da shell podem ser implementadas através de arquivos que são lidos e executados por ela, os assim-chamados shell scripts, como veremos mais tarde. Neste caso, trata-se de uma verdadeira atividade de programação, na qual estes scripts são os programas. Quase toda a programação do sistema é feita desta forma, como se pode ver nos arquivos que estão no diretório /etc/init.d/, contendo em sua maioria scripts de bash.


next up previous
Next: Tarefas Up: FMA 215 Aula 12: Previous: FMA 215 Aula 12: