Recherche de site Web

Différentes façons de créer et d'utiliser des alias Bash sous Linux


Alias dans bash peut être simplement appelé une commande ou un raccourci qui exécutera une autre commande/programme. Alias est très utile lorsque notre commande est très longue et pour les commandes fréquemment utilisées. Au cours de cet article, nous allons voir quelle est la puissance d’un alias et les différentes manières de créer un alias et de l’utiliser.

Vérifier les alias Bash sous Linux

Alias est une commande intégrée au shell et vous pouvez la confirmer en exécutant :

type -a alias

alias is a shell builtin

Avant de sauter et de configurer un alias, nous verrons les fichiers de configuration impliqués. Un alias peut être défini soit au « niveau utilisateur » ou au « niveau système ».

Invoquez votre shell et tapez simplement « alias » pour voir la liste des alias définis.

alias

Les alias au niveau de l'utilisateur peuvent être définis soit dans le fichier .bashrc, soit dans le fichier .bash_aliases. Le fichier .bash_aliases consiste à regrouper tous vos alias dans un fichier séparé au lieu de le mettre dans le fichier .bashrc avec d'autres paramètres. Dans un premier temps, .bash_aliases ne sera pas disponible et nous devons le créer.

ls -la ~ | grep -i .bash_aliases       # Check if file is available
touch ~/.bash_aliases                  # Create empty alias file

Ouvrez le fichier .bashrc et recherchez la section suivante. Cette section de code est chargée de vérifier si le fichier .bash_aliases est présent dans le répertoire personnel de l'utilisateur et de le charger chaque fois que vous lancez une nouvelle session de terminal.

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

Vous pouvez également créer un fichier d'alias personnalisé sous n'importe quel répertoire et ajouter une définition dans .bashrc ou .profile pour le charger. Mais je ne préférerai pas cela et je choisis de m'en tenir au regroupement de tous mes alias sous .bash_aliases.

Vous pouvez également ajouter des alias sous le fichier .bashrc. Recherchez la section alias sous le fichier .bashrc où elle contient des alias prédéfinis.

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:quote=01'

some more ls aliases
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'

Add an "alert" alias for long running commands.  Use like so:
  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$//'\'')"'

Créer un alias sous Linux

Vous pouvez soit créer un alias temporaire qui sera stocké uniquement pour votre session en cours et qui sera détruit une fois votre session en cours terminée, soit un alias permanent qui sera persistant.

La syntaxe pour créer un alias sous Linux.

alias <name-of-the-command>="command to run"

Par exemple, dans un scénario réel.

alias Hello="echo welcome to Tecmint"

Ouvrez le terminal et créez la commande alias de votre choix. Si vous ouvrez une autre session, l'alias nouvellement créé ne sera pas disponible.

alias Hello"echo welcome to Tecmint"
alias
Hello

Pour rendre l'alias persistant, ajoutez-le au fichier .bash_aliases. Vous pouvez utiliser votre éditeur de texte préféré ou utiliser la commande cat ou la commande echo pour ajouter un alias.

echo alias nf="neofetch" >> ~/.bash_aliases
cat >> ~/.bash_aliases
cat ~/.bash_aliases

Vous devez recharger le fichier .bash_aliases pour que les modifications soient effectives dans la session en cours.

source ~/.bash_aliases

Maintenant, si j'exécute « nf » qui est un alias pour « neofetch », cela déclenchera le programme neofetch.

nf

Un alias peut s'avérer utile si vous souhaitez remplacer le comportement par défaut d'une commande. Pour la démonstration, je prendrai une commande uptime, qui affichera la disponibilité du système, le nombre d'utilisateurs connectés et la charge moyenne du système. Je vais maintenant créer un alias qui remplacera le comportement de la commande uptime.

uptime
cat >> ~/.bash_aliases alias uptime="echo 'I am running uptime command now'"
source ~/.bash_aliases
uptime

À partir de cet exemple, vous pouvez conclure que la priorité revient aux alias bash avant de vérifier et d’invoquer la commande réelle.

cat ~/.bash_aliases
source ~/.bash_aliases
uptime

Supprimer un alias sous Linux

Supprimez maintenant l'entrée uptime du fichier .bash_aliases et rechargez le fichier .bash_aliases qui imprimera toujours le uptime. avec la définition d'un alias. En effet, la définition de l'alias est chargée dans la session shell en cours et nous devons soit démarrer une nouvelle session, soit supprimer la définition de l'alias en exécutant la commande unalias comme indiqué dans le image ci-dessous.

unalias uptime

Ajout d'alias à l'échelle du système

Jusqu'à présent, nous avons vu comment configurer un alias au niveau de l'utilisateur. Pour définir un alias globalement, vous pouvez modifier le fichier «/etc/bash.bashrc» et ajouter des alias qui seront efficaces globalement. Vous devez disposer de privilèges élevés pour modifier le fichier bash.bashrc.

Vous pouvez également créer un script sous «/etc/profile.d/». Lorsque vous vous connectez à un shell, «/etc/profile» exécutera n'importe quel script sous profile.d avant d'exécuter réellement ~/.profile. Cette méthode réduira le risque de gâcher le fichier /etc/profile ou /etc/bash.bashrc.

sudo cat >> /etc/profile.d/alias.sh
alias ls=”ls -ltra”

Vous trouverez ci-dessous le code extrait du /etc/profile qui s'occupe d'exécuter tous les scripts que nous mettons sous /etc/profiles.d/. Il recherchera tous les fichiers portant l'extension .sh et exécutera la commande source.

tail /etc/profile

C'est tout pour cet article. Nous avons vu ce qu'est un alias, les fichiers de configuration impliqués avec l'alias et différentes manières de configurer l'alias localement et globalement.