Ganhando tempo no Terminal

Publicado por Andre (pinduvoz) em 21/03/2012

[ Hits: 6.368 ]

Blog: http://casadopinduvoz.wordpress.com/

 


Ganhando tempo no Terminal



Uma das muitas maneiras de ganhar tempo no terminal, é limitar a digitação de comandos, usando os conhecidos: bash aliases.

Um 'alias' (o singular de 'aliases'), não passa de um 'apelido' para uma linha de comando, onde uma única palavra será a substituta de toda a linha.

Usando como exemplo a linha abaixo:

sudo apt-get update && sudo apt-get dist-upgrade -y

É um bocado de digitação para atualizar nossas fontes e depois, rodar um upgrade completo pré-autorizado (-y).

Então, que tal se tudo isso pudesse ser feito com a palavra 'atualiza'?

Pode, bastando que você digite este comando no terminal:

alias atualiza='sudo apt-get update && sudo apt-get dist-upgrade -y'

E depois, digite apenas:

atualiza

Gostou?

Se gostou e usa Ubuntu, torne permanente usando meu ".bash_aliases" para o APT, que segue:

alias atualiza='sudo apt-get update && sudo apt-get dist-upgrade -y'
alias limpa='sudo apt-get autoremove && sudo apt-get autoclean'
alias instala='sudo apt-get install'
alias remove='sudo apt-get remove'
alias procura='apt-cache search'


Basta que todo o texto acima, seja colocado no arquivo oculto de nome ".bash_aliases" na sua pasta de usuário, bastando criá-lo desde logo, com o editor:

gedit .bash_aliases

Após criar (pode ser que ele já exista), editar, salvar e fechar o arquivo, reinicie a sessão do Ubuntu para implementar as mudanças, e usar assim:

atualiza

Já vimos.

limpa

Vai remover os pacotes inúteis com confirmação e limpar o cache do APT, parcialmente (só elimina o que não está mais nos repositórios).

instala pacote

A mesma coisa que: sudo apt-get install pacote

remove pacote

A mesma coisa que: sudo apt-get remove pacote

procura pacote

A mesma coisa que: apt-cache search pacote


Outros 'apelidos' que costumo usar:

alias rm='rm -i'
alias ll='ls -l'
alias la='ls -a'
alias discos='df -h'
alias ram='free -m'
alias distro='cat /etc/issue'
alias energia='acpi -V'


O primeiro é interessante, pois pede confirmação para a remoção de pacotes pelo comando: rm

Os demais, cabe a você experimentar.

Encerrando, se você não usa Ubuntu, inclua seus 'aliases' no final do arquivo ".bashrc".

Até a próxima dica.

Outras dicas deste autor

Resolvendo de vez os erros envolvendo arquivos .save em /etc/apt/sources.list.d

Bug: Elementary + Totem [Resolvido]

VirtualBox nos clones do RHEL (CentOS e Scientific Linux)

Duas dicas simples para o Linpus Linux Lite (AA1)

Wi-Fi AC no Linux - Complementação

Leitura recomendada

Windows 7 bootável pelo pendrive

Minicom em notebooks

Importar chave pública GPG

Configurando Terminal Para Exibir Asteriscos ao Digitar Senha

Atualização do Debian Wheezy (estável) para Testing

  

Comentários
[1] Comentário enviado por 9u31220 em 21/03/2012 - 10:44h

Vlw pela dica, só uma observação. O alias rm='rm -i' pode se tornar um problema se você vai excluir arquivos recursivamente.

[2] Comentário enviado por levi linux em 21/03/2012 - 11:32h

Caro André, parabéns pela dica, muito útil, uso tantos alias aqui que o bash já está ficando lento para carregar, risos.

[3] Comentário enviado por pinduvoz em 21/03/2012 - 15:46h

Pessoal, aqueles que usam outros aliases úteis poderiam posta-los aqui para completar a dica.

Um exemplo legal de complemento seriam os aliases

atualiza

limpa

instala

remove

procura

para outros gerenciadores de pacotes, como o Yum.

[4] Comentário enviado por pinduvoz em 21/03/2012 - 18:07h

Para o primeiro comentário, lembro que dá para ignorar o alias para o comando rm usando a sintaxe abaixo:

\rm arquivo

"rm" arquivo

[5] Comentário enviado por chimico em 21/03/2012 - 22:49h

Olá pinduvoz, eu poderia postar uma conf ou uma dica, mas achei este espaço bem apropriado. +favoritos

não são alias, mas funções, que devem ser adicionadas em seu ~/.bashrc, então vai aí:

# Relacionado ao Apt
# Adiciona chaves gpg
function aadkey() { gpg --keyserver subkeys.pgp.net --recv-keys "$1" && gpg --armor --export "$1" | sudo apt-key add -; }
# instala pacotes pelo apt-get sem sugeridos e recomendados
function aanrs() { sudo apt-get -o APT::Install-Recomends=0 -o APT::Install-Suggests=0 install "$@"; }
# instala pacotes pelo apt-get sem recomendados
function aanr() { sudo apt-get -o APT::Install-Recomends=0 install "$@"; }
# instala pacotes pelo apt-get sem sugeriidos
function aans() { sudo apt-get -o APT::Install-Suggests=0 install "$@"; }
# instala pacotes pelo apt-get com sugeridos e recomendados
function aars() { sudo apt-get -o APT::Install-Recomends=1 -o APT::Install-Suggests=1 install "$@"; }
# instala pacotes pelo apt-get com recomendados
function aar() { sudo apt-get -o APT::Install-Recomends=1 install "$@"; }
# busca por pacotes e exibe uma lista ordenada alfabeticamente
function aasc() { apt-cache search "$@" | sort ; }
# mostra informações sobre um pacote
function aashow() { apt-cache show "$@"; }
# instala pacotes pelo apt-get com sugeridos
function aas() { sudo apt-get -o APT::Install-Suggests=1 install "$@"; }
# atualiza a lista de pacotes do apt
function aau() { sudo apt-get update; }
# apt-fast como usuário comum
function apt-fast() { sudo /bin/bash /usr/bin/apt-fast "$@"; }

# Atualização e limpeza do sistema
function debgrade()
{
sudo apt-get update;
sudo apt-get -y --force-yes -o APT::Install-Recomends=1 -o APT::Install-Suggests=1 install debdelta;
sudo debdelta-upgrade -v -d -A;
sudo apt-fast -d -y --force-yes dist-upgrade;
sudo apt-get -y --force-yes dist-upgrade;
sudo apt-get autoclean;
sudo apt-get autoremove;
# sudo apt-file update;
# sudo auto-apt update-local;
# sudo apt-get -y --force-yes autoremove;
# deborphan | xargs sudo apt-get -y --force-yes remove;
deborphan | grep -v libsdl-image1.2 | grep -v libsdl-mixer1.2 | grep -v rxvt | xargs sudo apt-get -y --force-yes --purge remove;
dpkg -l | awk '{ if ($1 == "rc") print $2}' | xargs sudo dpkg -P;
# COLUMNS=200 dpkg -l |grep ^rc |awk '{print "$2"} ' | xargs sudo dpkg -P;
}




Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts