O Legado Do Open Source: BASH
Dissertações: O Legado Do Open Source: BASH. Pesquise 862.000+ trabalhos acadêmicosPor: arthurfrota • 9/10/2013 • 2.184 Palavras (9 Páginas) • 529 Visualizações
O legado do Open Source: BASH
André Luiz, Arthur Frota, Carlos Eduardo, Lucas, Washington Gonçalves
FATENE
andreluiz_job@hotmail.com; arthurfrota@gmail.com; krluseduardo@gmail.com; lucasleonab@yahoo.com.br; washington1001@hotmail.com
Resumo
As inúmeras contribuições que o legado do sistema UNIX nos trouxe, sem dúvida alguma se tem tamanho reconhecimento se não os seus múltiplos Shells. Cada um deles possui tipos e características próprias e ainda a sua sintaxe revolucionária o Case Sensitive onde a sintaxe aberta ou fechada influência na execução de um comando ou um conjunto de comandos. Explanaremos e discorreremos sobre os conhecidos Shells providos pelo Open Source (sistemas abertos)de onde servem de fonte e inspiração de múltiplas plataformas e seus usuários. A facilidade de criação, execução e funcionalidades o tornam ainda mais notáveis, tendo em vista que o Shell influência toda a execução de um sistema e reflete também a quem o utiliza.
1. Introdução
O nome Bash significa Bourne Again Shell, um produto GNU. Ele é a interface padrão de linha de comando utilizada praticamente em todas as distribuições GNU/Linux.
Ela oferece interatividade com o usuário, oferecendo edição de linha de comando, complementação de comandos, histórico, bem como vários outros recursos extras.
A criação do Bash foi desenvolvida por Chet Ramey através do projeto GNU em 1983 que tinha como intuito de recriar e se diferenciar de qualquer referência em relação ao sistema UNIX tendo como ponto comum a opção de ser aberto uma vez que parte do código UNIX era patenteado por parte dos laboratórios Bell, mas era aberto aos desenvolvedores.
Quando se fala em interpretador de comandos dos sistemas LINUX, logo se remete ao Bash, porém, existem outros Shells que serão discorridos em outros tópicos deste trabalho.
2. Conceitos básicos
Todo o Shell tem em comum o fato de que deve existir uma série de sintaxes e ordens distintas. Com os Shells dos sistemas abertos não são diferentes, mas ressalta-se um diferencial imprescindível que é a apresentação e execução do seu Shell. Em comum todo o Shell deve apresentar suas linhas que devem ser preenchidas por comandos. Neste reconhecimento adentra-se a característica do Case Sensitive, onde as letras maiúsculas e minúsculas influenciam na execução de uma tarefa. A aparência de um Shell varia sutilmente, no mais a grafia ou as cores do terminal que o usuário pode escolher para melhor atendê-lo, porém alguns Shell podem variar a sintaxe dependendo da distribuição, como também tipos de repositórios que serão descritos brevemente.
O Shell Bash dos sistemas abertos possuem funcionalidades intrínsecas sendo uma delas a execução de determinados comandos apenas em modo privilegiado ou conhecido SUDO substitute user do (fazer substituindo usuário), onde ao se detectar que o usuário já se encontra neste nível de privilégio as linhas de comando serão executadas normalmente caso a sintaxe e a funcionalidade existam e estejam corretas. Caso o oposto adentra-se automaticamente o pedido de Login do SUDO para se completar a ação ou é dado um retorno ao usuário informando que o mesmo não possui privilégios para executar a ação e então utiliza-se o comando SUDO –S para se eleger o usuário SUDO passando seus privilégios para o usuário comum, isto se chama o modo formal, o modo nominal e corrente é que o SUDO é elegido e passa a sustentar as ações do usuário comum do sistema, esta diferenciação é necessária ser descrita, pois o usuário SUDO ou também conhecido ROOT (raiz) do sistema pode não ser elegido por políticas internas (ou caso não se saiba suas credenciais) ou não seja suficiente para executar a função, sendo necessário eleger outro Shell para executar esta ação. É neste ponto em que outros Shells são necessários para se complementar certas funções. O porquê disto se deve ao fato de que certas funções só foram implementadas a partir de atualizações do sistema, e para se criar um único Shell seria inviável, pois ele teria de aceitar varias sintaxes e agregaria funções demais sendo por vezes desnecessárias, sendo esta a vantagem de se ter Shell específicos para tarefas específicas. Deveras, também atentamos que cada Shell tem seu(s) desenvolvedor(es) e para se criar um interpretador que leia e execute diferentes sintaxes como já dito antes é inviável e imprevisível, pois projetos desta natureza requer a quebra do código para diferentes desenvolvedores, mesmo sendo aberto existem características próprias de cada um deles ao qual não estão dispostos a alterarem ou remove-los.
3. Funcionalidade
A função do Shell é prover ao usuário uma interface limpa, simples e eficiente. O Shell é incorporado em uma interface gráfica, que em suma significa que um programa com interface gráfica (GUI) é uma abstração do Shell (CUI) onde ícones e botões incorporam e simulam comandos em um Shell. O Shell também tem suas funções especificas, dentre elas alterar, remover, criar e distribuir ordens em sistema podendo ser automatizado para isto, ou sendo constantemente alimentado pelo administrador do sistema. Citamos também as diferentes funções dos Shells Bash, C Shell, e o Korn Shell. O Shell Bash incorpora algumas funcionalidades do C Shell e do Korn Shell e é compatível pelo Bourne Shell (sh), não é por menos que ele é o mais conhecido é utilizado, porém não significa que é o mais completo. O C Shell foi largamente utilizado nos sistemas abertos BSD (Berkeley Software Distribution) e outro menos conhecido o Xenix que foi uma tentativa da Microsoft junto com o gigante das Telecomunicações AT&T de embarcar um sistema UNIX na década de 70, que variantemente se tornou a linguagem de programação C ao qual tempos depois seria escrita o sistema fechado Windows (em primeiro momento MsDOS) e em comum também aceita Bourne Shell (sh) como também sistema de histórico e aliases de funções. O Korn Shell é o mais popular Shell dos sistemas
...