Um Shell fornece uma interface para sistemas Linux e Unix-like interpretando comandos e atua como um intermediário entre o usuário e o funcionamento central do sistema operacional.
Sem dúvida, o shell bash é o mais popular, e alguns usuários preferem outros shells como o ZSH, que é o shell padrão no macOS. Mas existem muitos shells além desses populares, com diferentes recursos e casos de uso.
Neste artigo, vamos dar uma olhada em alguns shells menos populares que são mantidos ativamente e fornecem uma experiência de usuário diferente.
1. Fish
Quando se fala de shells que não sejam bash/zsh, o primeiro nome que vem à nossa mente é o Fish.
O Fish é um shell de linha de comando inteligente e fácil de usar **principalmente para sistemas operacionais semelhantes ao UNIX.
Características do Fish
- Autossugestão de comandos com base no histórico e conclusões.
- Suporta cor de 24 bits.
- Ele suporta realce de sintaxe, e todos os recursos funcionam fora da caixa.
Instalando o Fish
O Fish está disponível nos repositórios oficiais de quase todas as distribuições Linux. No Ubuntu, você pode instalá-lo por:
sudo apt install fish
A versão nos repositórios do Ubuntu é um pouco antiga. Se você quiser instalar a versão mais recente, você pode usar o PPA oficial fornecido pela equipe.
sudo apt-add-repository ppa:fish-shell/release-3 sudo apt update sudo apt install fish
2. Nushell
Nushell é um novo tipo de shell que funciona em Linux, macOS, Windows, BSD, etc. Nu, como também é chamado, leva sua filosofia e inspiração de projetos como PowerShell, linguagens de programação funcionais e ferramentas modernas de linha de comando.
Características do Nushell:
- Tudo são dados: Os pipelines Nu usam dados estruturados para que você possa selecionar, filtrar e classificar sempre da mesma maneira com segurança.
- Plugins poderosos: É fácil estender o Nu usando um poderoso sistema de plugins.
- Mensagens de erro fáceis de ler. Nu opera em dados digitados, por isso ele captura bugs que outros shells não fazem. E quando as coisas quebram, Nu diz exatamente onde e por quê.
- Suporte IDE limpo.
Instalando o Nushell
Se você estiver no Ubuntu, você não encontrará um repositório apt para instalar o Nushell. Mas você pode criá-lo instalando as dependências necessárias, de acordo com suas instruções no GitHub.
Felizmente, existe uma maneira de instalá-lo em qualquer distribuição usando Homebrew. Você pode consultar nosso tutorial sobre instalação e uso do Homebrew Package Manager no Linux.
Depois de configurá-lo com sucesso no Linux, você precisa digitar o seguinte comando para instalar o Nushell:
brew install nushell
Dirija-se ao seu site oficial para explorar mais opções de instalação.
3. Dune
O criador do projeto descreve Dune como um shell à beira da praia. Dune é rápido, útil e bonito, oferecendo alguns recursos de metaprogramação de nicho, como citação.
- Antes de entrar no modo interativo, Dune executa o prelúdio, um arquivo de inicialização armazenado no diretório home.
- O REPL da Duna é totalmente personalizável
- Você pode definir aliases atribuindo uma variável ao nome de um programa
- Use uma macro para escrever funções que modificam o ambiente do seu shell e agem como comandos ou programas
- Dune oferece uma extensa biblioteca padrão e também fornece uma interface bonita para ver todas as funções disponíveis em cada módulo.
Instalando o Dune Shell
Dune shell está disponível no repositório Arch Linux como dunesh.
Para todos os outros usuários, o shell Dune pode ser instalado com cargo. Então, primeiro, você precisa instalar a versão mais recente do Rust. Se você já tiver o Rust instalado, certifique-se de ter a versão mais recente e, em seguida, prossiga para instalar o Dune.
cargo install -f dune
Uma vez instalado, você pode acessar o shell digitando o seguinte:
dunesh
4. Xonsh
O Xonsh é um shell multiplataforma e um prompt de comando com tecnologia Python. Ele combina Python e bash shell para que você possa executar comandos Python diretamente no shell. Você pode até combinar comandos Python e shell.
Tivemos um artigo separado sobre Xonsh se você está curioso para saber mais.
- A linguagem Xonsh tem primitivas de shell que você está acostumado a partir de Bash
- Preparar variáveis de ambiente e argumentos em Python e usá-los em comandos shell
- Xontribs é um sistema de extensão terceiro
- Conclusão de guia personalizável, ligações de teclas, estilos de cores
- Interface rica para descobrir a história
Instalando o Xonsh Shell
Xonsh está disponível nos repositórios de muitas distribuições Linux como Ubuntu, Fedora, etc. Então, para instalá-lo no Ubuntu, execute:
sudo apt install xonsh
Xonsh também fornece um pacote AppImage, que pode ser baixado de sua página de download. Você pode consultar nosso Guia AppImage se você é novo no formato de arquivo.
5. Hilbish
Hilbish é um shell extensível que é muito personalizável através da linguagem de programação Lua. O shell é destinado a usuários casuais e usuários avançados.
- Script simples e fácil
- Histórico e Menus de Conclusão: Fornece ao usuário menus adequados para conclusão e pesquisa de histórico
- O realce de sintaxe e as dicas estão disponíveis através da API Lua
- Ele funciona em sistemas Unix e Windows, mas no Windows, pode haver problemas.
Instalando o Hilbish
Hilbish não está disponível nos repositórios de pacotes do Ubuntu. Então, você estará construindo-o a partir da fonte.
Para instalá-lo, você precisaGo e Task instalado.
sudo apt install golang-go sudo snap install task --classic
Uma vez instaladas as dependências, execute os seguintes comandos para instalar o shell Hilbish:
git clone --recursive https://github.com/Rosettea/Hilbish cd Hilbish go get -d ./...
Se você quiser uma ramificação estável, execute estes comandos:
git checkout $(git describe --tags git rev-list --tags --max-count=1) task build sudo task install
6. Elvish
Elvish é uma linguagem de programação expressiva e um shell interativo versátil. Ele roda em Linux, Mac e Windows. Mesmo que a v1.0 não tenha sido lançada, ele já é adequado para a maioria dos usos interativos diários.
- Pipelines poderosos: Pipelines em Elvish podem transportar dados estruturados, não apenas texto. Você pode transmitir listas, mapas e até mesmo funções através do pipeline.
- Estruturas de controle intuitivas
- Directory History: Elvish se lembra de todos os diretórios que você esteve. Você pode acessá-lo pressionando
CTRL
+L
. - Histórico de comandos
- Gerenciador de arquivos embutido: Acessível pressionando
CTRL
+N
Instalando o Elvish
Elvish shell está disponível no Ubuntu e Arch Linux e seus gerenciadores de pacotes. Então, para instalá-lo, abra um terminal e execute:
sudo apt install elvish
7. Oh
De acordo com seus desenvolvedores, Oh é uma reimaginação do shell Unix.
Ele pretende se tornar um substituto mais poderoso e robusto para as opções modernas, respeitando as convenções estabelecidas pelo shell Unix ao longo do último meio século.
- Canais, tubos, ambientes e funções de primeira classe
- Valores de retorno avançados que funcionam com construções de shell padrão
- Suporte para modularidade.
- Um conjunto simplificado of regras de avaliação e cotação.
- Uma sintaxe que se desvia o mínimo possível das convenções estabelecidas;
Instalando o Oh
Oh fornece um binário pré-compilado. Você precisa baixá-lo de sua página oficial do GitHub.
Você precisa dar permissão de execução ao arquivo usando o comando:
chmod +x nome_do_arquivo
Agora, você pode executá-lo por:
./nome_do_arquivo_binario
8. Solidity
O Solidity é um shell interativo com gravação de sessão leve e suporte a compilador remoto. Quando você altera o pragma/linguagem do Solidity, ele busca automaticamente um compilador remoto correspondente.
pragma solidity <versão>
tenta carregar dinamicamente a versão do compilador selecionada- As sessões podem ser salvas e restauradas usando o comando
.session
. - As configurações são salvas na saída (não é seguro ao executar shells simultâneos).
$_
é um espaço reservado para o último resultado conhecido.- Comandos especiais são prefixados por pontos. Todo o resto é avaliado como código Solidity.
Instalando o Solidity
Você pode instalar o shell Solidity através do npm.
Verifique se você tem a versão mais recente do nodejs e npm instalado e, em seguida, digite o seguinte comando:
npm install -g solidity-shell
Uma vez instalado, execute solidity-shellpara iniciar a sessão.
9. Yash
Yash, ou ainda outro shell é um shell de linha de comando compatível com POSIX escrito em C99 (ISO/IEC 9899:1999). Ele possui recursos para uso interativo e de script diário.
- Alises globais
- Redirecionamento de soquete, redirecionamento de tubulação e redirecionamento de processo
- Comando de prompt e manipulador de comando-não-encontrado
- Conclusão da linha de comando com scripts de conclusão predefinidos para mais de 100 comandos
- Previsão de linha de comando com base no histórico de comandos
Instalando o Yash Shell
Para instalar o shell, você precisa ir para a página versões do GitHub e baixar o arquivo tar. Agora extraia o arquivo tar; dentro dele, você encontrará um arquivo INSTALL com instruções para instalá-lo.
Normalmente, você deve executar o comando abaixo dentro da pasta extraída.
./configure && make && sudo make install
Menções Honrosas
1.Ion: Ion Shell é um shell de sistema moderno escrito em Rust, principalmente para RedoxOS. Ainda é um trabalho em andamento, e os usuários devem esperar alterações de sintaxe.
- Closh: Closh é um shell semelhante a bash que combina o melhor dos shells UNIX tradicionais com o poder de Clojure. O objetivo é ser uma alternativa moderna ao bash. Isso também está nos estágios iniciais de desenvolvimento.
O que você acha dessas conchas listadas? Você experimentaria alterando o shell padrão para algumas das opções aqui? Qual é o seu favorito? Compartilhe seus pensamentos na caixa de comentários abaixo.