Comando alias no Linux: Guia completo de uso básico a avançado

Introdução ao comando alias

O comando alias é um recurso interno em shells como Bash, permitindo criar atalhos para comandos complexos ou frequentes. Isso simplifica a digitação e reduz erros no terminal.

Utilidades principais incluem:

  • Simplificar sequências de comandos longas
  • Adicionar opções padrão a comandos comuns
  • Criar atalhos fáceis de lembrar
  • Listar aliases definidos na sessão atual

Sintaxe básica

alias [-p] [nome[=valor] ...]

Parâmetros

  • Sem argumentos: exibe todos os aliases definidos
  • -p: mostra aliases em formato reutilizável
  • nome: identificador do alias
  • valor: comando que o alias representa

Opções comuns

Opção Descrição
-p Exibe aliases no formato alias nome='valor' para fácil cópia
(nenhuma) Mostra todos os aliases da sessão atual

Este comando interno não suporta --help; use help alias para ajuda ou type alias para verificação.

Exemplos práticos

Listar aliases

# Exibir todos os aliases
alias

# Formato reutilizável
alias -p

# Verificar alias específico
alias listar
alias buscador

Definir novos aliases

# Habilitar cores no comando ls
alias ls='ls --color=auto'

# Atalhos para navegação
alias listar_detalhes='ls -alF'
alias listar_todos='ls -A'
alias listar_compacto='ls -CF'

# Comandos complexos
alias atualizar_sistema='sudo apt update && sudo apt upgrade -y'
alias meu_ip='curl ifconfig.me'

# Alias com pipes
alias filtrar_processos='ps aux | grep -v grep | grep'

Modificar aliases existentes

# Desativar cores no ls
alias ls='ls --color=never'

# Definir múltiplos aliases
alias ls='ls --color=auto' buscador='grep --color=auto'

Persistência de aliases

# 1. Editar arquivo de configuração
nano ~/.bashrc

# 2. Adicionar definições no final do arquivo
# Exemplo: alias listar_detalhes='ls -alF'
# Exemplo: alias atualizar_sistema='sudo apt update && sudo apt upgrade'

# 3. Aplicar mudanças imediatamente
source ~/.bashrc
# Ou usando ponto
. ~/.bashrc

Opções de persistência

  • ~/.bashrc: configuração pessoal do Bash (recomendado)
  • ~/.bash_aliases: arquivo dedicado para aliases (se suportado)
  • ~/.profile ou ~/.bash_profile: carregado no login
  • /etc/bash.bashrc: configuração global afetando todos os usuários

Precauções importantes

Uso de aspas

# Correto: comando entre aspas
alias listar_detalhes='ls -alF'
alias listar_detalhes="ls -alF"

# Incorreto: sem aspas causa erros
alias remover=rm -rf # Interpretado como dois comandos separados

Escopo de aliases

  • Temperário: definido diretamente no terminal válido apenas na sessão atual
  • Permanente: adicionado a arquivos de configuração, carregado em novas sessões
  • Em scripts: aliases definidos em scripts geralmente duram apenas durante a execução

Sobrescrita de aliases

# A definição posterior substitui a anterior
alias ls='ls --color=auto'
alias ls='ls --color=never' # Sobrescreve a definição acima

# Usar comando original ignorando aliases
\ls        # Ignora alias
command ls # Usa comando externo diretamente

Segurança

# Aliases perigosos (não recomendados)
alias rm='rm -rf' # Remove sem confirmação
alias cp='cp -f'  # Sobrescreve arquivos sem aviso
alias mv='mv -f'  # Move sem confirmação

# Aliases seguros (recomendados)
alias rm='rm -i' # Confirma antes de remover
alias cp='cp -i' # Confirma antes de sobrescrever
alias mv='mv -i' # Confirma antes de mover

Conflitos

# Verificar antes de definir
type listar 2>/dev/null || alias listar='ls -alF'

# Usar nomes únicos para evitar conflitos
alias meu_listar='ls -alF'

Depuração

# Ver definição de um alias
alias listar # Saída: alias listar='ls -alF'

# Checar tipo do comando
type ls
type listar

# Desativar aliases temporariamente (útil em scripts)
set +o alias

# Reativar aliases
set -o alias

Remover aliases

# Remover alias individual
unalias listar

# Remover todos os aliases
unalias -a

Uso avançado

Aliases com parâmetros

# Funções substituem aliases complexos (suportam argumentos)
criar_e_entrar() {
  mkdir -p "$1" && cd "$1"
}
# Uso
criar_e_entrar novo_diretorio

Aliases condicionais

# Definir aliases com base em condições
if [ -n "$SSH_CONNECTION" ]; then
  alias ls='ls --color=auto'
else
  alias ls='ls --color=never'
fi

Combinação de comandos

# Criar atalho para fluxo de trabalho
alias implantar='git push origin main && ssh usuario@servidor "cd /app && git pull"'

Perguntas frequentes

Por que meus aliases desaparecem ao reiniciar o terminal?
Aliases definidos diretamente no terminal são temporários. Para persistência, adicione-os a arquivos como ~/.bashrc e execute source ~/.bashrc.

Como verificar se um comando é alias, interno ou externo?
Use type <comando>, por exemplo, type ls.

Qual a diferença entre aliases e funções?
Aliases são substituições simples de strings sem suporte a parâmetros. Funções permitem lógica complexa, parâmetros e controle de fluxo. Para atalhos com argumentos ou complexidade, prefira funções.

Tags: Linux Bash shell alias Terminal

Publicado em 7-20 08:41