5 Shells de Código Aberto Mais Utilizados para Linux

O shell é o interpretador de comandos em um sistema operacional como Unix ou GNU/Linux, é um programa que executa outros programas. Ele fornece ao usuário de um computador uma interface para o sistema Unix/GNU Linux para que o usuário possa executar diferentes comandos ou utilitários/ferramentas com alguns dados de entrada.

Quando o shell termina de executar um programa, envia uma saída para o usuário na tela, que é o dispositivo de saída padrão. Por esse motivo, é referido como o “interpretador de comandos”.

O shell é muito mais do que apenas um interpretador de comandos, é também uma linguagem de programação própria com construções de linguagem de programação completas, como execução condicional, loops, variáveis, funções e muito mais.

É por isso que o shell Unix/GNU Linux é mais poderoso em comparação com o shell do Windows.

Neste artigo, examinaremos alguns dos shells de código aberto mais usados no Unix/GNU Linux.

1. Shell Bash

O Bash Shell, ou simplesmente “Bash“, significa “Bourne Again SHell“. É uma melhoria do original Bourne Shell (sh) e foi introduzido em 1989 por Brian Fox.

Ao longo dos anos, Bash tornou-se um dos interpretadores de linha de comando mais populares e amplamente utilizados em muitas distribuições Linux e macOS (até Catalina, após o qual foi substituído por zsh).

Bash fornece aos usuários a capacidade de executar comandos, navegar pelo sistema de arquivos e executar scripts. Os usuários podem aproveitar recursos como histórico de comandos, preenchimento de tabulação e capacidades de script para automatizar tarefas e agilizar fluxos de trabalho.

O Bash Shell desempenhou um papel fundamental na evolução da computação de código aberto, oferecendo uma interface consistente para que os usuários interajam com seus sistemas.

Bash Shell

2. Tcsh/Csh Shell

O Tcsh (pronunciado “tee-shell“) e Csh (pronunciado “see-shell“) são shells de linha de comando baseados em Unix que existem há décadas. Csh, ou a C shell, foi desenvolvida por Bill Joy no final dos anos 1970 na Universidade da Califórnia, Berkeley.

Introduziu várias funcionalidades e sintaxe de script que foram inspiradas pela linguagem de programação C, o que a tornou popular entre programadores familiarizados com C.

Tcsh é uma versão aprimorada da original Csh, que significa “Shell C Tenex”, com “Tenex” sendo uma referência ao sistema operacional TENEX.

Tcsh incorpora todas as características de Csh junto com melhorias adicionais, como edição de linha de comando, controle de trabalhos e complementação de comandos.

Ambas as shells foram influentes no mundo Unix, com muitos usuários apreciando sua sintaxe de script única e recursos. No entanto, com o tempo, outras shells como bash ganharam mais popularidade devido a seus recursos extensivos e ampla adoção.

No entanto, Tcsh e Csh permanecem uma parte integrante da história das shells Unix.

Tcsh Shell

3. Shell Ksh

O KornShell, comumente conhecido como ksh, é uma shell Unix que foi desenvolvida por David G. Korn na AT&T Bell Laboratories no início dos anos 1980.

Ela combina recursos de ambas as shells C (csh) e Bourne (sh), visando fornecer o melhor dos dois mundos. Ao longo dos anos, ksh tem sido elogiada por suas capacidades avançadas de script, tornando-a favorita entre muitos administradores de sistemas e usuários avançados.

Uma das características notáveis de ksh é seu uso de arrays associativos, uma função que não era comum nos shells da época. Ele também introduziu a construção select, que torna a geração de menus em scripts direta.

Outra vantagem significativa é sua capacidade de edição de linha de comando e histórico, que foram posteriormente adotadas por outros shells como bash.

Ksh Shell

4. Shell Zsh

O shell Zsh, frequentemente referido simplesmente como “Zsh”, é um poderoso shell Unix que conquistou uma popularidade notável entre programadores e administradores de sistema.

Nascido como uma extensão do shell Bourne Shell, o Zsh incorpora recursos de outros shells como Bash, ksh e tcsh, oferecendo um conjunto rico de recursos e uso interativo aprimorado.

Uma das características distintivas do Zsh é sua capacidade de autocompletar robusta. Ao contrário de outros shells, a autocompletação do Zsh é consciente do contexto, sugerindo comandos relevantes, caminhos de arquivo e até mesmo ramificações Git, tornando a experiência do usuário mais suave e intuitiva.

Além disso, Zsh é altamente personalizável usando o Oh My Zsh framework, os usuários podem facilmente aplicar temas e plugins, melhorando tanto os aspectos estéticos quanto funcionais de seu ambiente de terminal.

Zsh Shell

5. Fish

Fish Shell é uma concha de linha de comando moderna e amigável que visa fornecer uma interface interativa e intuitiva para os usuários.

Ao contrário de conchas tradicionais como Bash ou Zsh, Fish oferece sugestões inteligentes fora da caixa, facilitando a navegação e execução de comandos tanto para iniciantes quanto para usuários experientes.

Um dos recursos notáveis de Fish são suas sugestões automáticas, que fornecem feedback em tempo real com base na sua história de comandos, permitindo uma execução de comandos mais rápida.

Fish também apresenta uma interface vibrante e colorida, com destaque de sintaxe que facilita a leitura e compreensão de comandos. Sua configuração baseada na web permite que os usuários personalizem sua experiência de shell sem se aprofundar em arquivos de configuração complexos.

Além disso, Fish possui uma extensa e crescente coleção de plugins e temas contribuídos pela comunidade, aprimorando sua funcionalidade e aparência.

Fish Shell
Sumário

Essas não são as únicas shells disponíveis no Unix/GNU Linux, mas estão entre as mais comumente usadas, além das que vêm pré-instaladas em várias distribuições Linux.

I hope you find this article useful. For any additional information, please don’t hesitate to post a comment.

Source:
https://www.tecmint.com/different-types-of-linux-shells/