Dica: Variando Terminais e Shell.


Autoria de Alberto Federman Neto, albfneto

Atualizado em: 5 de Julho de 2017.

1 . INTRODUÇÃO:

Todos conhecem o Shell Bash (padrão na maioria dos GNU/Linux) e Emuladores de Terminal, como o Konsole (do KDE), o Gnome-Terminal (do GNOME), o TWM e o xterm (do X-Window) etc…

Mas existem várias Shell e vários tipos de Terminal e se pode trocá-los, para variar.

2 . VÁRIOS TERMINAIS:

Existem vários Emuladores de Terminal diferentes:

Cansou de Konsole e GNOME-Terminal? Existem Outros Terminais, Escolha o Seu.

20 Useful Terminal Emulators for Linux.

Top 7 Open Source Terminal Emulators.

Top 6 Best Linux Terminal Emulators.

Alguns desses Emuladores de Terminal são suspensos, como o Yakuake, o Guake:

Terminal Guake.

Terminal Guake com Comandos Personalizados.

e o Tilda:

Tilda, Console Semelhante aos Jogos em Primeira Pessoa.

Terminais Estilo Guake, Para Linux.

3. VÁRIAS SHELL:

Também existem várias Shells, além do conhecido Bash: sh, csh, tsh etc… etc…

Shell do Unix.

Bash.

Evolution of The Unix. Linux Shells.

Inclusive, os Shell são muito personalizáveis, bem modificáveis.

4. OBJETIVO DA DICA:

Algumas pessoas sabem, gosto de testar pacotes e de variar, usar vários ambientes gráficos.

Também gosto de variar o Terminal. Uso Terminator, Yakuake, Guake, Tilda, Konsole, Gnome-Terminal, Mate-Terminal, Terminal do XFCE, LXTerminal, Mrxvt, Aterm, Eterm  e às vezes, até Xterm simples.

Também gosto de variar a Shell. Uso três Shells: Bash, Zsh e Fish.

A presente Dica é uma atualização, complemento de experimentos que fiz, variando a Shell e o Terminal:

Nova Personalização de Bash.

3 Shell.

Vários Tipos de Terminais.

5. VOCÊ TAMBÉM PODE FAZER!

Para você mudar seu Terminal ou a Shell, é simples! Instale os pacotes dos Terminais que quiser e instale os pacotes das Shell que quiser.

Para variar de Terminal, abra o seu “Terminal” padrão (da distro) e digite o comando, nome do terminal que quer usar. Exemplo, “mrxvt” , “terminator” etc…

Para variar a Shell, parecido: Abra um “Terminal” qualquer (pode ser o novo, que acabou de instalar) e digite. como comando, o nome da nova Shell: csh, zsh, fish etc…

PRONTO!

Não precisa remover os pacotes dos Terminais e da Shell Bash, originais. Eles podem coexistir pacificamente, e você pode usar um dia um(a), outro dia outro(a).

Aliás, nem é aconselhável remover o Bash e o Terminal Originais. Em muitas Distros, Terminais e Shell são dependências essenciais, e sua remoção, pode deixar o sistema inutilizado.

Não é o objetivo desta Dica, detalhar como se instala e configura os novos Terminais que instalou, ou configurar, personalizar e usar as novas Shell.

Mesmo porque fiz extensos e detalhados Artigos de como se faz para variar o Terminal e para configurar as Shell que uso: Bash, Zsh e Fish. Consulte:

Zsh (Z Shell), uma Alternativa ao Bash.

Fish, Um Shell Fácil de Usar.

Consulte Também estes Artigos, de outros Autores:

Bash Reference Manual.

Oh-My-Fish.

Terminator e Guake.

Terminal Powerline e Configurar Bash, Fish e Zsh.

Fish e Seus Tutoriais.

Fish Shell.

Fish Shell no Slackware (Serve Para outras Distros, com Modificações).

6. SCREENSHOTS:

Agora algumas telas…

Na Figura 1, o Terminal é o Terminator, o configurador dele, e o Shell é o meu mais recente Bash modificado, através da edição clássica do arquivo ~/.bashrc (Tal como submetí recentemente ao VOL, Viva o Linux quando sair, ATUALIZAREI AQUI):

Terminal “Terminator”, com o meu Shell Bash, Personalizado.

Nesta outra imagem, o Terminal é o Mrxvt, aberto com o Shell Zsh:

Terminal MXVT, aberto com o Shell Zsh.

O Zsh foi configurado através do uso do pacote Oh-My-Zsh com o Tema chamado “Dallas”

Partes da configuração contém sincronização de tempo (usando NTP e serviço NTPD). Meu Arquivo /etc/ntp.conf é este.

Detalhes: Sincronizando o Linux com a Hora Legal Brasileira, Usando NTP.br.

Servidor NTP. Configuração e Ajuste de Data e Hora.

Para sincronizar tempo, especialistas recomendam que se use o programa ntpd, e não o antigo ntpdate, menos preciso e obsoleto.

Essa parte, NTP, da configuração do Zsh foi copiada-colada do meu Arquivo do Bash (Veja Item 7)

Para instalar e configurar o Zsh, veja no meu Artigo.

Na terceira imagem, em cima, é um terminal suspenso Tilda, com o meu Shell Bash personalizado e, em baixo, é um terminal Eterm (que tem papeis de parede aleatórios, sempre um diferente) no qual se acabou de ativar o Shell Fish

Você pode ver, na janela em baixo, as linhas acima são o meu Bash e as linhas embaixo, meu Fish.

Terminais: Suspenso Tilda e Eterm, com Shell Bash e Fish.

Para configurar o Shell Fish, consulte este Artigo.

7. PRÉ-CONFIGURADOS E EXEMPLOS:

Para preguiçosos de plantão, que não querem, eles próprios, configurar tudo…. Podem usar como exemplos, os meus arquivos de configuração de Shell, já prontos.

Para o BASH, gravar em ~/.bashrc :

# /etc/skel/.bashrc
#
# This file is sourced by all *interactive* bash shells on startup,
# including some apparently interactive shells such as scp and rcp
# that can't tolerate any output.  So make sure this doesn't display
# anything or bad things will happen !

# Teste de Bash, em Sabayon, deixar:
# Test for an interactive shell.  There is no need to set anything
# past this point for scp and rcp, and it's important to refrain from
# outputting anything in those cases.
if [[ $- != *i* ]] ; then
	# Shell is non-interactive.  Be done now!
	return
fi


# Put your fun stuff here.


# Arquivo de Configuração para Bash.
#
# Grave em /home/usuario/.bashrc
#
# Atualização e modificação destes:
#
# http://www.vivaolinux.com.br/etc/bashrc-2 e
# http://www.vivaolinux.com.br/etc/bashrc-6
#
# Por Albfneto <albfneto@fcfrp.usp.br>, VOL, 2017. Versão 16.
#

# O Original foi baseado numa modificação do Arquivo Default do Sabayon Linux 13 e no Arquivo publicado
# por Giga Tesla Boy:
# http://www.vivaolinux.com.br/etc/bashrc-1
#Também inclue partes de Bashs modificados para Arch Linux:
# https://wiki.archlinux.org/index.php/Color_Bash_Prompt#.2Fetc.2FDIR_COLORS
# E destas configurações:
# http://www.linuxandlife.com/2011/12/how-to-customize-command-prompt.html
#
# Cores diferentes para diretórios, arquivos etc...: Aparência modificada.

# Boas Vindas.
echo '   _ '
echo '  *v* *** BEM VINDO AO '`hostname`' ***'
echo ' /(_)\ '
echo '  ^ ^ ' `date`
echo ' '

#Sistema
echo '    '
echo '  *** Sistema: '`uname -a`' ***'
echo '   '
echo '  *** Usuario: '`who -m`' ***'
echo '   _ '

# Checa a Hora do Brasil, lista servidores NTP e ajusta Teclado:

echo '   _ '
echo '  *** Hora do Brasil e Servidores: ***'
echo '   _ '
ntpq -p
echo '   _ '
setxkbmap -model abnt2 -layout br -variant abnt2
echo '   _ '
echo '*** PRONTO, OK, EIS SEU TERMINAL, DIGITE SEU COMANDO: ***'
date

# Caso não queira Itens repetidos no bash_history
# edite este .bashrc e adicione a linha:
export HISTCONTROL=ignoreboth

# Tem muitos comandos uteis e quer um historico maior das coisas?, Aumente aqui
export HISTSIZE=1000

# Côres Gerais:
export LS_OPTIONS='--color=auto'
eval `dircolors`
alias ls='ls $LS_OPTIONS'
alias ll='ls $LS_OPTIONS -l'
alias l='ls $LS_OPTIONS -lA'

#desativa sincronização vertical:
export vblank_mode=0

# Côres Básicas do Prompt Inicial Simples, se quiser usar, descomente
 # PS1="\[\e[0;39m\]\u\[\e[m\] \[\e[1;34m\]\w\[\e[m\] \[\e[0;94m\]\$ \[\e[m\]\[\e[0;32m\]"
 
 # Outros Prompts modificados descomente para usar:
 
 # tambem tem este:
 # PS1="\[\e[36;1m\]\u@\[\e[32;1m\]\H> \[\e[0m\]"

 # E Este, que eu usava antes

 # PS1="\[\e[1;36m\]\u@ [\e[1;32m\]\H \[\e[1;34m\]--->>>[\[\e[1;33m\]\d \[\e[1;35m\]\t \[\e[1;37m\] ] \n\[\e[1;35m\] [\[\e[1;34m\] O DIRETORIO E= \[\e[1;32m\]\w \ [\[\e[1;35m\]------->"

 # Estes, por Carla Schroder:
 # https://www.linux.com/learn/how-make-fancy-and-useful-bash-prompt-linux
 # PS1='\[\e[1;36m\]\d \[\e[1;32m\]\t \[\e[1;33m\]\u@\[\e[1;35m\]\h:\w\$\[\e[0;31m\] '
 # PS1='\[\e[1;36m\]\d \[\e[1;32m\]\t \[\e[1;33m\]\u@\[\e[1;35m\]\h:\w\$\[\e[0;31m\] '
 
 # Modificado de Joshua Price.
 # https://www.maketecheasier.com/8-useful-and-interesting-bash-prompts/
PS1="\n\[\033[34m\] DATA, HORA, UTC E ANO: $(/bin/date)\n\[\033[32m\] ESTOU NO DIRETORIO: \w\n\[\033[1;31m\]\u@\h: \[\033[1;35m\]\$(/usr/bin/tty | /bin/sed -e 's:/dev/::'): \[\033[1;36m\]\$(/bin/ls -1 | /usr/bin/wc -l | /bin/sed 's: ::g') Arquivos, Tamanho Total: \[\033[1;33m\]\$(/bin/ls -lah | /bin/grep -m 1 total | /bin/sed 's/total //')b\[\033[0m\] $ \[\033[1m\]"

Para o ZSH, gravar em ~/.zshrc :

 # Path to your oh-my-zsh configuration.
ZSH=$HOME/.oh-my-zsh

# Set name of the theme to load.
# Look in ~/.oh-my-zsh/themes/
# Optionally, if you set this to "random", it'll load a random theme each
# time that oh-my-zsh is loaded.
ZSH_THEME="dallas"

# Example aliases
# alias zshconfig="mate ~/.zshrc"
# alias ohmyzsh="mate ~/.oh-my-zsh"

# Set to this to use case-sensitive completion
# CASE_SENSITIVE="true"

# Comment this out to disable bi-weekly auto-update checks
# DISABLE_AUTO_UPDATE="true"

# Uncomment to change how often before auto-updates occur? (in days)
# export UPDATE_ZSH_DAYS=13

# Uncomment following line if you want to disable colors in ls
# DISABLE_LS_COLORS="true"

# Uncomment following line if you want to disable autosetting terminal title.
# DISABLE_AUTO_TITLE="true"

# Uncomment following line if you want to disable command autocorrection
# DISABLE_CORRECTION="true"

# Uncomment following line if you want red dots to be displayed while waiting for completion
# COMPLETION_WAITING_DOTS="true"

# Uncomment following line if you want to disable marking untracked files under
# VCS as dirty. This makes repository status check for large repositories much,
# much faster.
# DISABLE_UNTRACKED_FILES_DIRTY="true"

# Which plugins would you like to load? (plugins can be found in ~/.oh-my-zsh/plugins/*)
# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/
# Example format: plugins=(rails git textmate ruby lighthouse)
plugins=(git)

source $ZSH/oh-my-zsh.sh

# Customize to your needs...
# export PATH=$PATH:/usr/local/bin:/usr/bin:/bin:/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.7.3:/opt/sublime-text2:/opt/nvidia-cg-toolkit/bin:/usr/games/bin:/opt/cuda/bin:/opt/cuda/libnvvp

# Adaptado a partir de meu Bash:

#Welcome msg
echo '   _ '
echo '  *v* *** BEM VINDO AO '`hostname`' ***'
echo ' /(_)\ '
echo '  ^ ^ ' `date`
echo ' '

#Sistema
echo '    '
echo '  *** Sistema: '`uname -a`' ***'
echo '   '
echo '  *** Usuario: '`who -m`' ***'
echo '   _ '

# Checa a Hora do Brasil, lista servidores NTP e ajusta Teclado:

echo '   _ '
echo '  *** Hora do Brasil e Servidores: ***'
echo '   _ '
ntpq -p
echo '   _ '
setxkbmap -model abnt2 -layout br -variant abnt2
echo '   _ '
echo '*** PRONTO, OK, EIS SEU TERMINAL, DIGITE SEU COMANDO: ***'
date

# Teste de Shell, default no Sabayon:

# Test for an interactive shell.  There is no need to set anything
# past this point for scp and rcp, and it's important to refrain from
# outputting anything in those cases.
if [[ $- != *i* ]] ; then
    # Shell is non-interactive.  Be done now!
    return
fi

Para o FISH, el pode gravar arquivos em vários locais, as vezes, mais de um.

Depende até da versão do Fish. Como vários arquivos são binários, é mais fácil configurar na interface gráfica ou no Oh-My-Fish, seguindo Meu Artigo.

Anúncios
Dica: Variando Terminais e Shell.

2 comentários sobre “Dica: Variando Terminais e Shell.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s