Linux : comment créer des alias de commandes temporaires et persistants ?
Sommaire
I. Présentation
Dans ce tutoriel, nous allons apprendre à configurer des alias de commande sous Linux. Le système Debian sera utilisé dans cet exemple, mais la configuration est reproductible sur d'autres distributions. Avant de passer à la pratique, parlons de l'intérêt des alias...
Si vous êtes un adepte de la ligne de commande sous Linux, vous savez probablement déjà que les commandes sont très nombreuses et qu'elles ont de nombreuses options... On ne va pas s'en plaindre, mais la saisie de certaines commandes peut s'avérer longue et être la source d'erreur de saisie, justement. Pour répondre à cette problématique, il existe la possibilité de créer des alias de commandes qui sont "des raccourcis" vers des commandes plus complexes et/ou plus longues. Autrement dit, l'alias est un nom alternatif ou un nom court pour une autre commande.
Version originale de l'article : 01/05/2013
II. Lister les alias sous Linux
Pour lister les alias actuellement présents sur une machine Linux, ce n'est pas bien compliqué ! À partir du prompt du Terminal, il suffit d'exécuter cette commande :
alias
Cette commande va lister les alias de l'utilisateur actuel, puisque chaque utilisateur peut avoir ses propres alias personnalisés. Après avoir créé votre premier alias, cette commande vous permettra de le visualiser.
III. Comment créer un alias ?
Avant de créer un alias, vous devez savoir qu'il y a deux types d'alias :
- Les alias temporaires (valident dans la session en cours uniquement)
- Les alias permanents (qui seront toujours présents après redémarrage de la machine)
A. Créer un alias temporaire
Commençons par aborder la création d'un alias temporaire. La syntaxe pour créer un alias temporaire est la suivante :
alias <nom de l'alias>="<commande associée à l'alias>"
Prenons pour exemple la commande ci-dessous dont l'objectif est de lire en temps réel les dernières lignes du fichier de log "/var/log/auth.log" (lié à l'authentification sous Linux) :
sudo tail -f /var/log/auth.log
On pourrait associer cette commande à l'alias suivant :
authlog
Dans ce cas, l'alias suivant doit être créé :
alias authlog="sudo tail -f /var/log/auth.log"
Ensuite, il suffit d'exécuter la nouvelle commande pour appeler la commande complète :
authlog
On peut voir que cela fonctionne parfaitement :
Ce qui est cool, c'est que l'on peut profiter de l'autocomplétion lors de la saisie d'un alias, comme avec une commande classique, pour gagner encore plus de temps !
Le problème de cet alias temporaire, c'est qu'il est valide uniquement pour la session en cours...
B. Créer un alias persistant
Pour conserver un alias après redémarrage du système, ou après une déconnexion puis un reconnexion à une session Linux, il convient de créer des alias persistants. Pour cela, l'alias doit être ajouté au fichier de configuration de votre profil shell. Par défaut, Debian utilise Bash donc ce sera au sein du fichier "~/.bashrc.
Désormais, à partir d'un éditeur de texte tel que nano ou vim, il va falloir éditer ce fichier pour ajouter l'alias :
flo@SRV-DEB-1:~$ nano ~/.bashrc
Dans ce fichier, l'alias doit être ajouté en respectant la même syntaxe que pour créer un alias temporaire. La seule différence c'est que la commande est ajoutée dans un fichier plutôt que de l'exécuter dans le Terminal. On ajoute tout simplement le contenu à la fin du fichier. On peut ajouter autant d'alias que l'on souhaite (un par ligne).
# Alias pour lire le contenu du fichier auth.log alias authlog="sudo tail -f /var/log/auth.log"
Je vous encourage à commenter vos alias, pour vous y retrouver plus facilement.
On enregistre et on ferme le fichier : le tour est joué !
Enfin, presque car il faut recharger notre fichier ".bashrc" si l'on veut appliquer la configuration dès maintenant (sans avoir à se déconnecter).
source ~/.bashrc
L'occasion de lister les alias avec la commande évoquée précédemment afin de voir qu'il est bien présent dans la liste !
IV. Conclusion
Désormais, vous êtes capable de créer un alias sous Linux, ce qui devrait vous plaire si vous cherchez à avoir un nom court pour une commande assez longue ou complexe que vous utilisez régulièrement ! Une astuce pratique pour l'administration d'une machine sous Linux.
Salut et merci pour ce super petit tuto.
Juste un petite question. Comment faire si je souhaite créer un alias avec un espace ? exemple :
vi /root/.bashrc
alias cd toto=’cd /home/toto/’
alias cd tata=’cd /home/tata/’
Si je recharge le shell
source ~/.bashrc
-ash: alias: cd: not found
J’ai ensuite essayé de protéger l’espace dans le .bashrc
vi /root/.bashrc
alias cd\ toto=’cd /home/toto/’
alias cd\ tata=’cd /home/tata/’
Si je recharge le shell
source ~/.bashrc
-ash: alias: `cd toto’: invalid alias name
-ash: alias: `cd tata’: invalid alias name
Une petite piste a me filer ?
Merci d’avance
les alias ne sont qu un seul mot et ne doivent avoir ni espaces , ni caractères spéciaux.
La solution:
alias cd_toto=’cd /home/toto/’
alias cd_tata=’cd /home/tata/’
Merci pour le tuto mais ça ne marche pas chez moi. (linuxMint Rosa)
Je voudrais créer l’alias
ls_-l = « ll »
bash: alias: ls_l : non trouvé
bash: alias: = : non trouvé
bash: alias: ll : non trouvé
La commande « alias » reste muette que ce soit sous l’utilisateur ou sous « root »
J’ai créé les fichiers « home/utilisateur/.bashrc et /home/utilisateur/.bash_aliases ».
Depuis 2 bonnes heures j’essaie de résoudre ce problème sans succès jusqu’à présent. Une petite aide serait la bienvenue.
Merci
la commande c’est alias tonAlias=’tacommande -sesOptions’
il ne faut pas mettre d’espace autour du signe = et bien mettre les simple quote et pas des guillemets
Les alias seront effacés à la fermeture du terminal.
Bonjour,
est-il possible de lancer une ligne de commande a chaque ouverture du terminal ou bien un alias?
A chaque fois que j ouvre mon terminal je suis oblige de rentrer une ligne de commande.
Merci bcp 😀
Bonjour et merci, ca m’a aider à savoir comment creer des alias.
Bonjour, merci pour ce tuto, ca ma vraiment aider
Bonjour,
peut on faire un alias uniquement pour le propriètaire.
merci pour ce tuto
s’il vous plait qui a un code en c++ d’un alias et comment créer un variable d’environnement en linux