você está aqui: Home  → Arquivo de Mensagens

Aumente sua produtividade com aliases inteligentes

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 22 de julho de 2013

Aliases são atalhos muito úteis que nos permitem economizar bastante tempo e irritação, nos poupando dos erros que aparecem quando digitamos algo errado.

Por exemplo, é comum digitarmos algo como cd.. para irmos para o diretório pai, esquecendo do espaço entre o nome do comando (cd) e o argumento (..). Este erro pode ser tratado por meio do alias a seguir:

 alias cd..='cd ..'

Pronto, um problema a menos.

Outro problema bastante comum ocorre quando queremos criar um diretório em que a árvore completa ainda não existe. Por exemplo, queremos criar o diretório /home/rubens/docs/2013/setembro. Se o diretório doc não existir, recebemos um erro:

$ mkdir /home/acme/docs/2013/setembro
mkdir: é impossível criar o diretório "/home/acme/docs/2013/setembro": Arquivo ou diretório não encontrado

Para tratar este erro, podemos criar um alias:

 alias mkdir='mkdir -pv'

Ao emitir o comando novamente:

$ mkdir /home/acme/rubens/docs/2013/setembro
mkdir: foi criado o diretório "/home/acme/rubens"
mkdir: foi criado o diretório "/home/acme/rubens/docs"
mkdir: foi criado o diretório "/home/acme/rubens/docs/2013"
mkdir: foi criado o diretório "/home/acme/rubens/docs/2013/setembro"

A diretiva -v significa verbose, ou seja, o comando irá emitir mensagens a respeito de todo o processamento realizado.

A definição dos aliases pode ser feita em uma sessão interativa ou então gravada nos arquivos de inicialização do shell, para uso permanente.

Sistemas GNU/Linux já trazem alguns aliases definidos por padrão. Para ver quais são estes aliases, basta digitar:

$ alias
alias cd..='cd ..'
alias grep='grep --colour=auto'
alias ls='ls --color=auto'

O alias do comando grep é particularmente útil. O termo de busca é destacado em letras vermelhas, nas linhas em que for encontrado.

No arquivo .bashrc de meu sistema (LinuxMint), eu encontrei as seguintes linhas:

# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.

#if [ -f ~/.bash_aliases ]; then
#    . ~/.bash_aliases
#fi

Este trecho está comentado, mas é uma sugestão muito interessante, colocar todos os aliases em um arquivo separado (.bash_aliases) cuja existência é testada quando do início de uma sessão interativa.

Mas caso você não queira criar este arquivo, basta digitar as definições dos aliases diretamente no arquivo .bashrc.

Para desabilitar um alias temporariamente, basta digitar na linha de comando:

 unalias grep

Relaciono a seguir algumas sugestões interessantes, que podem ser copiadas e coladas diretamente em seu arquivo .bashrc:

# Limpar a tela
alias c='clear'

# Instalação de produtos
alias apt-get='sudo apt-get'

# Exibir arquivos ocultos
alias l.='ls -d .* --color=auto'

# ls com saída longa
alias ll='ls -la'

# Atalhos para o comando cd
alias ..='cd ..'
alias ...='cd ../../../'
alias ....='cd ../../../../'
alias .....='cd ../../../../'
alias .4='cd ../../../../'
alias .5='cd ../../../../..'

# mkdir mais inteligente
alias mkdir='mkdir -pv'

# ver a hora
alias now='date +"%T'

# Definir o editor vim como padrão
alias vi=vim

# Uso do vim com privilégios
alias svi='sudo vi'

## atalho para invocar o comando iptables com sudo
alias ipt='sudo /sbin/iptables'

# Exibir todas as regras
alias iptlist='sudo /sbin/iptables -L -n -v --line-numbers'
alias iptlistin='sudo /sbin/iptables -L INPUT -n -v --line-numbers'
alias iptlistout='sudo /sbin/iptables -L OUTPUT -n -v --line-numbers'
alias iptlistfw='sudo /sbin/iptables -L FORWARD -n -v --line-numbers'
alias firewall=iptlist

As possibilidades são muitas, o segredo é criar um alias para todos os comandos que você usa com mais frequência ou então comandos complexos que temos dificuldade em lembrar.

Saiba mais

Este artigo foi baseado em grande parte no texto 30 Handy Bash Shell Aliases For Linux / Unix / Mac OS X, do portal NIXCraft.

Veja também

BlackFriday no Portal Dicas-L Educação


Veja a relação completa dos artigos de Rubens Queiroz de Almeida