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.