Como verificar se um alias de shell está definido no Linux

LinuxBeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá como verificar se um alias de shell está definido no Linux. Começará listando os aliases atualmente definidos usando o comando alias para entender o que são aliases e como eles são exibidos.

Em seguida, você explorará locais comuns onde os aliases são configurados. Isso inclui verificar aliases específicos do usuário, tipicamente armazenados no arquivo ~/.bashrc, e inspecionar aliases em todo o sistema encontrados em /etc/bash.bashrc. Ao final deste laboratório, você será capaz de identificar e localizar definições de alias dentro do seu ambiente Linux.

Listar aliases com o comando alias

Nesta etapa, você aprenderá sobre aliases no Linux e como listá-los usando o comando alias.

Um alias é um atalho que permite substituir um comando longo por um mais curto e memorável. Isso pode economizar muita digitação e tornar sua experiência na linha de comando mais eficiente.

Por exemplo, em vez de digitar ls -l toda vez que você quiser uma lista detalhada de arquivos, você pode criar um alias como ll que faz a mesma coisa.

Para ver os aliases que estão atualmente definidos na sua sessão de terminal, basta digitar o comando alias e pressionar Enter:

alias

Você verá uma lista de aliases, semelhante a esta:

alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l='ls -CF'
alias la='ls -A'
alias ll='ls -alF'
alias ls='ls --color=auto'

Esta saída mostra o nome do alias à esquerda (por exemplo, ll) e o comando que ele representa à direita (por exemplo, ls -alF).

Observe o alias ls. Ele está definido como ls --color=auto. Isso significa que sempre que você digita ls, o sistema realmente executa ls --color=auto, que adiciona cor à saída para melhor legibilidade.

Compreender aliases é o primeiro passo para personalizar seu ambiente de terminal e fazê-lo funcionar melhor para você.

Clique em Continuar para prosseguir para a próxima etapa.

Verificar aliases do usuário em ~/.bashrc

Na etapa anterior, você viu uma lista de aliases usando o comando alias. Agora, vamos explorar onde alguns desses aliases são definidos.

Aliases específicos do usuário são frequentemente armazenados em arquivos de configuração dentro do seu diretório home. Para usuários do shell Bash, um local comum para isso é o arquivo ~/.bashrc. Embora este ambiente de laboratório use zsh, entender o papel de ~/.bashrc é importante, pois ele é amplamente usado em muitos sistemas Linux.

O símbolo ~ é um atalho para o seu diretório home, que é /home/labex neste ambiente. Portanto, ~/.bashrc se refere ao arquivo .bashrc localizado diretamente no seu diretório home. O ponto (.) no início do nome do arquivo o torna um arquivo oculto, o que significa que ele não aparecerá com um comando ls simples, a menos que você use a opção -a.

Vamos visualizar o conteúdo do arquivo ~/.bashrc usando o comando cat. cat é usado para exibir o conteúdo dos arquivos.

Digite o seguinte comando e pressione Enter:

cat ~/.bashrc

Você verá o conteúdo do arquivo .bashrc. Role pela saída para procurar linhas que começam com alias.

## some example aliases
## alias ll='ls -l'
## alias la='ls -a'

## Add an "alert" alias for long running commands.  Use like:
##   sleep 10; alert
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\\s*[0-9]*\\s*//;s/[;&|]\\s*alert$//'\'')"'

## 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

## enable programmable completion features (you don't need to enable
## this, if it's already enabled in /etc/bash.bashrc and /etc/profile
## sources /etc/bash.bashrc).
if ! shopt -oq posix; then
  if [ -f /usr/share/bash-completion/bash_completion ]; then
    . /usr/share/bash-completion/bash_completion
  elif [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
  fi
fi

Você pode notar que algumas linhas que começam com alias estão comentadas com um #. Estes são exemplos ou aliases inativos. Os aliases ativos são aqueles sem o # no início da linha.

Este arquivo é onde você normalmente adicionaria seus próprios aliases personalizados se estivesse usando Bash. Por exemplo, você pode adicionar uma linha como alias update='sudo apt update && sudo apt upgrade' para criar um alias para atualizar seu sistema.

Clique em Continuar para prosseguir e explorar aliases em todo o sistema.

Inspecionar aliases do sistema em /etc/bash.bashrc

Além dos arquivos de configuração específicos do usuário, como ~/.bashrc, também existem arquivos de configuração em todo o sistema que se aplicam a todos os usuários do sistema. Para o Bash, um desses arquivos é /etc/bash.bashrc.

Este arquivo geralmente contém configurações e aliases padrão que o administrador do sistema deseja que estejam disponíveis para todos.

Como este arquivo está localizado no diretório /etc, que é normalmente reservado para configuração do sistema, você pode precisar de privilégios de administrador para modificá-lo. No entanto, podemos visualizar seu conteúdo usando cat sem permissões especiais.

Vamos visualizar o conteúdo do arquivo /etc/bash.bashrc. Digite o seguinte comando e pressione Enter:

cat /etc/bash.bashrc

Você verá o conteúdo do arquivo de configuração do Bash em todo o sistema. Procure linhas que definem aliases.

## System-wide .bashrc file for interactive bash(1) shells.

## To enable the setting of the locale environment variables see
## /etc/profile.d/locale.sh. By default in Ubuntu OnLine,
## this is done from /etc/profile.

## If not running interactively, don't do anything
[ -z "$PS1" ] && return

## check the window size after each command and, if necessary,
## update the values of LINES and COLUMNS.
shopt -s checkwinsize

## If set, the pattern "**" used in a pathname expansion context should
## match only directories and subdirectories in addition to the contents of
## the current directory.
#shopt -s globstar

## make less more friendly for non-text input files, see lesspipe(1)
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"

## set variable identifying the chroot you work in (used in the prompt)
if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then
    debian_chroot=$(cat /etc/debian_chroot)
fi

## enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
    alias ls='ls --color=auto'
    #alias dir='dir --color=auto'
    #alias vdir='vdir --color=auto'

    alias grep='grep --color=auto'
    alias fgrep='fgrep --color=auto'
    alias egrep='egrep --color=auto'
fi

## colored GCC warnings and errors
#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=(01;34):quote=01;32'

## some more ls aliases
#alias ll='ls -l' #alias ll='ls -alF'
#alias la='ls -a' #alias la='ls -AF'
#alias l='ls -CF'

## Add an alias for the 'alert' command
#alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\\s*[0-9]*\\s*//;s/[;&|]\\s*alert$//'\'')"'

## enable programmable completion features (you don't need to enable
## this, if it's already enabled in /etc/bash.bashrc and /etc/profile
## sources /etc/bash.bashrc).
if ! shopt -oq posix; then
  if [ -f /usr/share/bash-completion/bash_completion ]; then
    . /usr/share/bash-completion/bash_completion
  elif [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
  fi
fi

Você deve ver alguns dos mesmos aliases que viu com o comando alias, como o alias ls com suporte a cores. Isso confirma que alguns dos aliases padrão que você usa são definidos em todo o sistema.

Compreender onde os aliases são definidos ajuda você a solucionar comportamentos inesperados e personalizar seu ambiente de forma eficaz.

Você agora aprendeu como listar aliases ativos e inspecionar arquivos de configuração comuns onde eles são armazenados.

Clique em Continuar para concluir este laboratório.

Resumo

Neste laboratório, você aprendeu como verificar se um alias de shell está definido no Linux. Você começou usando o comando alias para listar os aliases atualmente definidos em sua sessão de terminal, entendendo que os aliases são atalhos para comandos mais longos.

Em seguida, você explorou locais comuns onde os aliases são definidos, focando especificamente em aliases específicos do usuário, frequentemente encontrados no arquivo ~/.bashrc, e aliases em todo o sistema, que podem ser localizados em arquivos como /etc/bash.bashrc. Este processo ajuda você a entender como os aliases são configurados e onde procurar suas definições.