Shell Script (Capítulo I)1.
O que é o Shell?É a linha de comando do Linux. É o shell quem interpreta a linha de comandos digitada pelo usuário no terminal e chama os programas desejados. Lê-se "xéu".
O Shell fica entre o usuário e o Sistema Operacional, de forma que tudo que interage com o sistema tenha que passar por ele.
O Linux é um sistema multiusuário, e para conseguir acesso ao seu usuário, existe um arquivo que fornece registros para uma função de bloqueio, também informa o início de uma seção, refiro-me ao LOGIN, já no último campo é informado qual o Shell que você irá utilizar em sua seção.
Tipos de Shell existente:a.)
Bourne Shell (sh): Criado por Stephen Bourne. Durante bastante tempo foi o padrão do Unix. Também chamado de Standard Shell por ter sido o único e até hoje é o mais utilizado, inclusive nas distribuições Linux.
b.)
Korn Shell (ksh): Criado por David Korn. Trata-se de um super conjunto do
sh, tinha as facilidades do
sh e outros recursos adicionais.
c.)
Boune Again Shell (bash): Criado inicialmente por Brian Fox e Chet Ramey, este é o Shell do projeto GNU, o atual que tornou-se padrão nos Linux atuais porquê tem muitos adeptos e seus comandos se parecem com as do
C Shell.
d.)
C Shell (csh): Criado por Bill Joy. É o Shell mais usado no sistema
Free BSD. A estrutura dos seus comandos são bem parecidos com o da linguagem
C. O grande erro deste Shell, foi não dar compatibilidade com o
sh, fez seu próprio caminho.
Existem mais alguns outros Shell, por não serem padrões iremos tratar exclusivamente no qual o OpenSuse utiliza.
2.
Sua FuncionalidadeAssim que um determinado usuário inicia sua seção no Linux, entra o Shell para realizar tarefas rotineiras, isso faz com que o Kernel não fique o tempo todo realizando estas tarefas, e, consecutivamente, deixando o Kernel realizar as tarefas mais complexas.
O Shell é o interpretador do sistema, permite a elaboração de tomadas de decisões e armazenamento de valores em variáveis, loops, etc.
Além de executar comandos do sistema, o Shell também tem seus próprios comandos, como IF, FOR e WHILE, e também possui variáveis e funções. Tudo isso para tornar um pouco mais "esperta" e flexível essas chamadas de comandos feitas pelo usuário.
Como estas são as características de uma linguagem de programação, o Shell é uma ferramenta muito poderosa para desenvolver Scripts e programinhas rápidos para automatizar tarefas do dia-a-dia.
Para os que vêm do mundo
DOS, pense no Shell como um arquivo Batch (.BAT). O Shell é como um Batch (muito melhorado). Mas não se engane, o Shell não é um brinquedo, você pode até criar programas profissionais com ele, pois, a interação natural com o sistema operacional e seus programas multiplicam os poderes do Shell.
Interfaces interativas com o usuário, programas de cálculos, CGI, instaladores de software, manipulação de banco de dados, rotinas de backup, tudo isso pode ser feito em Shell!
Quer exemplos? Dê o seguinte comando:
file /usr/bin/* | grep shellVai ver como o Shell já faz parte de sua vida (não precisa entrar no root).
Perguntas? envie uma
MP prá mim, as perguntas interessantes eu colocarei no tópico referente.
A sequência padrão será de um capítulo por semana ou segundo o meu tempo